Web サイト構築言語として PHP は誰もが知っています。PHP による Web サイト構築はどこでも行われているため、今日は 済南 Web サイト制作 http://www.jnwebseo.com で、PHP を使用してエラー処理機能をカスタマイズする方法について説明します。コードをアップロードします。
関数 myErrorHandler($errno, $errstr, $errfile, $errline){
if(!(error_reporting() &$errno)){return;}
スイッチ ($errno){
ケース E_USER_ERROR:
echo "私のエラー [$errno] $errstr
";
echo "エラー行: $errline ファイル: $errfile
";
echo "PHP バージョン: " .PHP_VERSION ." (" .PHP_OS .")
";
休憩;
ケース E_USER_WARNING:
echo "私の警告 [$errno] $errstr
";
休憩;
ケース E_USER_NOTICE:
echo "私の通知 [$errno] $errstr
";
休憩;
デフォルト:
echo "不明なエラーの種類: [$errno] $errstr
";
休憩;
}
true を返します;
}
functiontrigger_test($age){//エラーをスローする関数をテストします
if($age <= 0 || $age > 999)trigger_error("不正な年齢: $age 歳", E_USER_ERROR);
if($age
if($age > 40 && $age
}
//エラーを単純かつ均一に処理する場合:
$errorHandler = set_error_handler("myErrorHandler");
trigger_test(1000);//エラーレベルerrorをスローします
function myError($errno, $errstr, $errfile, $errline){
print_r(func_get_args());
//具体的な処理方法
}
関数 myWarning($errno, $errstr, $errfile, $errline){
print_r(func_get_args());
//具体的な処理方法
}
関数 myNtice($errno, $errstr, $errfile, $errline){
print_r(func_get_args());
//具体的な処理方法
}
//異なるエラーレベルを個別に処理したい場合:
set_error_handler('myError',E_USER_ERROR);
set_Exception_handler('myWarning',E_USER_WARNING);
set_Exception_handler('myNtice',E_USER_NOTICE);
trigger_error('意図的にエラー、または重大なエラーをスローしました!',E_USER_ERROR);