php自定义错误处理用法实例

yipeiwu_com6年前PHP代码库

本文实例讲述了php自定义错误处理用法。分享给大家供大家参考。具体如下:

<?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);
?>

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHP array_push 数组函数

1. $arr = array(); $arr[] = ''; 2. $arr = array(); array_push($arr,''); 刚做一个100000次的循环插入,结果还是...

PHP实现数组根据某个单元字段排序操作示例

本文实例讲述了PHP实现数组根据某个单元字段排序操作。分享给大家供大家参考,具体如下: 如题,给出一个PHP数组,数组结构如下: $arr = array( array(...

PHP网络操作函数汇总

checkdnsrr — 给指定的主机(域名)或者IP地址做DNS通信检查 closelog — 关闭系统日志链接 define_syslog_variables — 初始化所有sysl...

php学习笔记之面向对象编程

复制代码 代码如下:<?phpclass db {     private $mysqli; //数据库连接     p...

PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明

举例说明: 在Windows环境下:原本在php4.3.0中运行正常的程序,在4.3.1中为何多处报错,大体提示为:Notice:Undefined varialbe:变量名称. 例如有...