$mysqli的空属性->;PHP5.3上的错误

$mysqli的空属性->;PHP5.3上的错误,php,mysqli,zend-server-ce,Php,Mysqli,Zend Server Ce,当我使用MySQLi在我的php应用程序上执行sql查询时,错误总是为空或null,因此禁止我记录或打印它们,这相当令人沮丧。。。当查询预期不会引发错误时,我在插入、更新或删除以下代码段中的数据时没有遇到任何问题 我在Zend Server 5.6.0和mysqli mysqlnd 5.0.8-dev-20102224-$Revision:318113的社区版上使用PHP5.3.9$ 这是执行我的查询的代码: ... $this->last= $this->mysqli->qu

当我使用MySQLi在我的php应用程序上执行sql查询时,错误总是为空或null,因此禁止我记录或打印它们,这相当令人沮丧。。。当查询预期不会引发错误时,我在插入、更新或删除以下代码段中的数据时没有遇到任何问题

我在Zend Server 5.6.0和mysqli mysqlnd 5.0.8-dev-20102224-$Revision:318113的社区版上使用PHP5.3.9$

这是执行我的查询的代码:

...
$this->last= $this->mysqli->query($sql);
if (!$this->last) 
{
    print_r($this->mysqli);

    var_dump($this->mysqli->error);
    var_dump($this->mysqli->errno);
    var_dump($this->mysqli);
    $msg = 'Query failed [ ' . $this->mysqli->error . ' ]';

    $this->mysqli->rollback();
    throw new Exception($msg, ...);
}
...
出于测试目的,我在我的数据库中插入了一个名为“bob”的城市,并尝试插入另一个同名城市,结果如下:

mysqli Object
(
    ...
    [errno] => 1062
    [error] => Duplicate entry 'bob' for key 'unq_city'
    ...
)
string(0) ""
int(0)
object(mysqli)#6 (18) {
  ...
  ["errno"]=>
  int(0)
  ["error"]=>
  string(0) ""
  ...
}
这里使用var_dump或访问mysqli对象的errno或error,正如我前面所说的,是null。但是,print\r显示了预期的错误!我做错了什么?我以前从未使用过mysqli,现在正在从oci8迁移,所以我希望这只是一些愚蠢的错误


我在一台较旧的服务器上测试了我的应用程序,PHP 5.3.8、ZSCE 5.5.0和mysqlnd 5.0.8-dev-20102224-$Revision:310735$,配置与我所知道的相同。所有转储和打印都显示了整个mysqli数据,没有任何空字段

我认为这是一个错误,你必须报告它,祝你好运!