PHP的`mysqli_connect()`返回哪种类型的对象?

时间:2018-09-24 21:05:42

标签: php mysqli

根据docsmysqli_connect()mysqli::__construct()的别名。根据该函数的docs,它返回

  

代表与MySQL服务器的连接的对象

这个对象是什么?例如,如果我仅依赖于文档,我将如何知道我定义为变量$res的可用方法

$res = mysqli_connect("host", "user", "password", "database");

1 个答案:

答案 0 :(得分:2)

如果我误解了,我深表歉意,但是似乎为了使您不得不问这个问题,您可能会缺少对__construct()方法的作用的一般理解。

每当您看到x::__construct()方法时,将要返回的对象就是x。该符号表示为class::method(),其中::右侧的名称是属于左侧命名的类的方法。在这种情况下,__construct()是一个称为magic methodconstructor,每当您创建类的新实例时都会自动调用。通常,您不会直接调用__construct(),而是在创建新对象时将调用它。

这两个语句通常是等效的。

$res = mysqli_connect("host", "user", "password", "database");

// this calls mysqli::__construct()
$mysqli = new mysqli("host", "user", "password", "database");

它们都将返回一个mysqli对象。


在依赖文档方面,当您单击该链接到那个mysqli::__construct()页面时,它同时显示mysqli::constructmysqli_connect的函数定义。在“过程样式”下,您会看到

mysqli mysqli_connect ([ string $host = ...

您看到的第一个mysqli是返回类型。您可以参考this page以更好地了解如何读取函数定义。由于您已经在mysqli::__construct页面上,因此页面右侧的所有链接都是mysqli的方法,但是您也可以在函数中单击mysqli链接定义直接转到课程页面。这样,所有内置类的PHP手册都被设置好了。