エラーハンドラ関数
function エラーハンドラ関数名( $errno, $errstr, $errfile, $errline ) { // ここにエラーへの対処内容を書く return TRUEまたはFALSE; }
引数 | 意味 |
---|---|
$errno | エラーレベルの内部値(例:E_ERRORなら1、E_WARNINGなら2) |
$errstr | エラーメッセージ |
$errfile | エラーが発生したファイル名 |
$errline | エラーが発生した行番号 |
戻り値(詳細は14章)としてTRUE・FALSEのどちらを返すかで挙動が変わります。
戻り値 | 意味 |
---|---|
TRUE | PHP標準のエラーハンドラを利用しない。つまり、エラーが画面に表示されなくなる。 |
FALSE | PHP標準のエラーハンドラを利用する。独自に定義したエラーハンドラ関数を実行した後に、通常のエラーレポーティングが行われる。 |
エラーハンドラの登録
set_error_handler('エラーハンドラ関数名');
PHPプログラム(PHPファイル)の冒頭でエラーハンドラ関数を登録しましょう。すると、どこでエラーが発生したときでも、独自のエラーハンドラ関数の処理が実行されます。
ただし致命的なエラーには対処できず、独自のエラーハンドラ関数は実行されません。エラーハンドラは警告や注意など、見逃しやすいエラーに対処するのに便利な仕組みです。