PHP エラーをデータベースに直接記録する
標準の error_log ファイルに依存する代わりに、すべてのエラーをデータベースに出力するように PHP を設定することは可能ですか? MySQLデータベース?
解決策
カスタム エラー ハンドラーを作成せずにこれを直接達成する方法はありませんが、単一のグローバルな変更を適用することができます。ユーザー定義のエラー ハンドラーの作成は、エラー メッセージをデータベースにリダイレクトする鍵となります。
コード例
以下は、PHP マニュアルの変更例です。
function myErrorHandler($errno, $errstr, $errfile, $errline) { $connection = ...; // Establish connection with MySQL $query = "INSERT INTO error_log (number, string, file, line) ". "VALUES ($errno, $errstr, $errfile, $errline)"; $result = mysql_query($query, $connection); return true; // Suppress PHP's internal error handling }
ユーザー定義のエラー ハンドラーを設定するには:
$old_error_handler = set_error_handler("myErrorHandler");
このカスタム エラー ハンドラーを実装すると、すべての PHP エラーが指定された MySQL データベースに自動的に記録され、一元化され、より整理されたエラー ハンドラーが提供されます。エラーを管理する方法。
以上がPHP エラーを MySQL データベースに直接記録できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。