我有一段非常简单的代码。
$mysqli = new mysqli($host, 'user', 'pass', $dbname);
if ($mysqli->connect_error) {
// ...
}
print_r($mysqli);
// ...
有2台服务器。一个用PHP 5.3另一个用5.2.4 第一台服务器可以正常工作,并打印有关连接的所有详细信息。
第二台服务器不会返回任何错误。所以看起来连接成功了。 但是对象是空的(存在时)
mysqli Object
(
)
可能是什么问题?
答案 0 :(得分:1)
答案是在 New Mysqli Object is Null
更多的测试显示,尽管对象似乎是空的,但属性却不是。 并且可以直接加入。 所以如果我这样做
print_r($mysqli->host_info);
我得到了预期的数据。而
print_r($mysqli)
显示为空。 它看起来像PHP 5.2.x中的一个错误 正如我在问题中提到的,它在PHP 5.3服务器上正常工作
答案 1 :(得分:-1)
$mysqli = new mysqli($host, 'user', 'pass', $dbname);
if (mysqli_connect_errno()) {
throw new Exception(mysqli_connect_errno()." ".mysqli_connect_error());
}
适用于任何版本