龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > php编程 >

error php中使用自定义错误处理

时间:2014-06-01 16:08来源:网络整理 作者:网络 点击:
分享到:
php中使用自定义错误处理 [代码片段(53行)]
<?php
error_reporting(E_ALL);
function ErrHandler($errorno, $errorstr, $errorfile, $errorline) 
{
   $display = true;
   $notify = false;
   $halt_script = false;
   $error_msg = "<br>The $errorno error is occurring at $errorline in
   $errorfile<br>";
   switch($errorno) 
   {
      case E_USER_NOTICE:
      case E_NOTICE:
      $halt_script = false;
      $notify = true;
      $label = "<B>Notice</B>";
      break;
      case E_USER_WARNING:
      case E_WARNING:
      $halt_script = false;
      $notify = true;
      $label = "<b>Warning</b>";
      break;
      case E_USER_ERROR:
      case E_ERROR:
      $label = "<b>Fatal Error</b>";
      $notify=true;
      $halt_script = false;
      break;
      case E_PARSE:
      $label = "<b>Parse Error</b>";
      $notify=true;
      $halt_script = true;
      break;
      default:
      $label = "<b>Unknown Error</b>";
      break;
   }
   if($notify)
    {
      $msg = $label . $error_msg;
      echo $msg;
   }
   if($halt_script) exit -1;
}
$error_handler = set_error_handler("ErrHandler");
echo "<BR><H2>Using Custom Error Handler</h2><BR>";
trigger_error("<BR>Error caused by E_USER_NOTICE</BR>", E_USER_NOTICE);
trigger_error("<BR>Error caused by E_USER_WARNING</BR>", E_USER_WARNING);
trigger_error("<BR>Error caused by E_USER_ERROR</BR>", E_USER_ERROR);
trigger_error("<BR>Error caused by E_PARSE</BR>", E_PARSE);
?>

精彩图集

赞助商链接