MySQLi がエラーと警告を PHP のデフォルトの 'error_log' ディレクティブに送信するように指定することはできますか? クラス仕様のエラーオプションが見つからないようです。次のようにエラーを手動で処理したくありません。
if ($result = $mysqli->query("...")) { }
else
handle $mysqli->error;
MySQLi がエラーと警告を PHP のデフォルトの 'error_log' ディレクティブに送信するように指定することはできますか? クラス仕様のエラーオプションが見つからないようです。次のようにエラーを手動で処理したくありません。
if ($result = $mysqli->query("...")) { }
else
handle $mysqli->error;
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 に追加機能を追加するために、これを頻繁に行います...