Действительно ли возможно указать, что MySQLi отправляет какие-либо ошибки и предупреждения значению по умолчанию PHP 'error_log' директива? Я, может казаться, не нахожу ошибочных опций для спецификации класса, и я не хочу обрабатывать ошибки вручную как так:
if ($result = $mysqli->query("...")) { }
else
handle $mysqli->error;
Ну, одним из способов было бы переопределить класс:
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...