例
ユーザ定義のエラーハンドラ関数を設定set_error_handler()関数、およびエラーをトリガ(with trigger_error() ):
<?php
// A user-defined error handler function
function myErrorHandler($errno, $errstr, $errfile, $errline) {
echo "<b>Custom error:</b> [$errno] $errstr<br>";
echo " Error on line $errline in $errfile<br>";
}
// Set user-defined error handler function
set_error_handler("myErrorHandler");
$test=2;
// Trigger error
if ($test>1) {
trigger_error("A custom error has been triggered");
}
?>
上記のコードが出力されます。このような何か:
Custom error: [1024] A custom error has been triggered
Error on line 14 in C:\webfolder\test.php
定義と使用法
set_error_handler()関数は、ユーザ定義のエラーハンドラ関数を設定します。
Note:この関数が使用される場合、標準的なPHPエラーハンドラは完全にバイパスされ、ユーザ定義のエラーハンドラは、スクリプトを終了しなければならないdie()必要に応じて、。
Note:このスクリプトは、それがその時点で登録されていないので、カスタムエラーハンドラを使用することはできませんが実行される前にエラーが発生した場合。
構文
set_error_handler( errorhandler ,E_ALL|E_STRICT) ;
パラメーター | 説明 |
---|---|
errorhandler | 必須。 エラー時に実行される関数の名前を指定します。 |
E_ALL|E_STRICT | 任意。 ユーザー定義のエラーが表示されるエラーレポートレベルで指定します。 デフォルトは"E_ALL" |
技術的な詳細
戻り値: | 以前に定義されたエラーハンドラを含む文字列 |
---|---|
PHPバージョン: | 4.0.1+ |
PHPの変更ログ: | PHP 5.5:パラメータのErrorHandlerは今NULL受け入れます PHP 5.2:エラーハンドラは、$ php_errormsgを取り込むためにFALSEを返す必要があります |
<PHPのエラー・リファレンス