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

Nik*_*yes 5 php mysqli

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

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

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

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

Dee*_*pak 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']);
Run Code Online (Sandbox Code Playgroud)

然后运行查询 $con