6

我正在使用这种方法连接到mysqldb :

$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']);
4

1 回答 1

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

于 2012-10-04T03:27:53.073 回答