mysqli查询返回false但没有错误消息

时间:2014-05-02 17:59:25

标签: php mysql mysqli

我在PHP类的上下文中有一个非常简单的SELECT查询,它返回false(失败)但我无法检索相关的错误信息。奇怪的是,调用工作正常,直到我不得不重新组织mysql数据库 - 没有修改PHP代码显然它失败 - 结果是错误的 - 但错误信息在哪里?

代码如下:

<?php
class Database {
    private $_connection;
    private $_result;
    private $_lastQuery;
    private $_error;

    public function __construct($dbase) {
        $this->_connection = new mysqli(DB_SERVER, DB_USER, DB_PASS, $dbase);
        if (mysqli_connect_error()) {
            trigger_error("failed to connect to MySQL: " . mysqli_connect_error(), E_USER_ERROR);
        }
        mysqli_set_charset($this->_connection, 'utf8');
    }

    public function query($query) {
        $this->_lastQuery = $query;
        $this->_result = mysqli_query($this->_connection, $query);
        $this->_error = $this->_connection->error;
        return $this->_result;
    }
}

$ this-&gt; _error中没有出现错误字符串;在调试期间(PHPStorm)检查时也没有显示。 通过命令行执行查询时,会生成(预期)错误消息。

1 个答案:

答案 0 :(得分:2)

看来问题实际上是xdebug。