本文实例讲述了PHP自定义错误处理用法。分享给大家供大家参考。具体如下:
PHP;">
PHP
error_reporting(E_ALL);
function ErrHandler($errorno,$errorstr,$errorfile,$errorline)
{
$display = true;
$notify = false;
$halt_script = false;
$error_msg = "
The $errorno error is occurring at $errorline in $errorfile
"; switch($errorno) { case E_USER_NOTICE: case E_NOTICE: $halt_script = false; $notify = true; $label = "Notice"; break; case E_USER_WARNING: case E_WARNING: $halt_script = false; $notify = true; $label = "Warning"; break; case E_USER_ERROR: case E_ERROR: $label = "Fatal Error"; $notify=true; $halt_script = false; break; case E_PARSE: $label = "Parse Error"; $notify=true; $halt_script = true; break; default: $label = "Unknown Error"; break; } if($notify) { $msg = $label . $error_msg; echo $msg; } if($halt_script) exit -1; } $error_handler = set_error_handler("ErrHandler"); echo "
"; trigger_error("
Error caused by E_USER_NOTICE",E_USER_NOTICE); trigger_error("
Error caused by E_USER_WARNING",E_USER_WARNING); trigger_error("
Error caused by E_USER_ERROR",E_USER_ERROR); trigger_error("
Error caused by E_PARSE",E_PARSE); ?>
The $errorno error is occurring at $errorline in $errorfile
"; switch($errorno) { case E_USER_NOTICE: case E_NOTICE: $halt_script = false; $notify = true; $label = "Notice"; break; case E_USER_WARNING: case E_WARNING: $halt_script = false; $notify = true; $label = "Warning"; break; case E_USER_ERROR: case E_ERROR: $label = "Fatal Error"; $notify=true; $halt_script = false; break; case E_PARSE: $label = "Parse Error"; $notify=true; $halt_script = true; break; default: $label = "Unknown Error"; break; } if($notify) { $msg = $label . $error_msg; echo $msg; } if($halt_script) exit -1; } $error_handler = set_error_handler("ErrHandler"); echo "
Using Custom Error Handler
"; trigger_error("
Error caused by E_USER_NOTICE",E_USER_NOTICE); trigger_error("
Error caused by E_USER_WARNING",E_USER_WARNING); trigger_error("
Error caused by E_USER_ERROR",E_USER_ERROR); trigger_error("
Error caused by E_PARSE",E_PARSE); ?>
希望本文所述对大家的PHP程序设计有所帮助。
原文链接:https://www.f2er.com/php/22332.html