mysqli :: real_connect和连接数据库中的新mysqli对象有什么区别?

时间:2012-10-04 03:17:31

标签: php mysqli

我正在使用此方法连接到mysql db:

$this->_Con = new mysqli($this->_DB['Server'],$this->_DB['User'],$this->_DB['Pass'],$this->_DB['DB']);

使用此方法连接时有什么区别:

$this->_Con = mysqli_init();
$this->_Con->real_connect($this->_DB['Server'],$this->_DB['User'],$this->_DB['Pass'],$this->_DB['DB']);

1 个答案:

答案 0 :(得分:7)

它只是另一种连接数据库的方式。如果您使用mysqli_init(),它将首先初始化mysqli对象。然后使用该对象,您将调用real_connect()以连接到数据库。但是当你使用new mysqli()时,你通过传递连接值作为参数来初始化mysqli对象,所以它同时进行初始化和连接。

注意:调用没有参数的构造函数与调用mysqli_init()相同。

在第一种情况下,您将连接对象作为返回值,因为您使用参数调用mysqli()构造函数。所以你可以对它运行查询。但在第二种情况下,您需要存储这样的连接,

$con = $this->_Con->real_connect($this->_DB['Server'],$this->_DB['User'],$this->_DB['Pass'],$this->_DB['DB']);

然后在$con

上运行查询