Обработка ошибок MySQLi

Действительно ли возможно указать, что MySQLi отправляет какие-либо ошибки и предупреждения значению по умолчанию PHP 'error_log' директива? Я, может казаться, не нахожу ошибочных опций для спецификации класса, и я не хочу обрабатывать ошибки вручную как так:

if ($result = $mysqli->query("...")) {  }
else
    handle $mysqli->error;
6
задан Spoonface 28 May 2010 в 20:05
поделиться

1 ответ

Ну, одним из способов было бы переопределить класс:

class myMySQLi extends MySQLi {

    public function query($query, $resultmode = MYSQLI_STORE_RESULT) {
        $res = parent::query($query, $resultmode);
        if (!$res) {
            //handle error
        }
        return $res;
    }
}

Тогда просто используйте как обычно, только вместо создания соединения через new MySQLi(), используйте new myMySQLi(). За исключением обработки ошибок, он будет выполняться точно так же. Я делаю это довольно часто, чтобы бросать исключения при ошибках и добавить дополнительную функциональность к MySQLi...

5
ответ дан 17 December 2019 в 04:42
поделиться
Другие вопросы по тегам:

Похожие вопросы: