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 数据结构 算法描述 冒泡排序 bubble sort

复制代码 代码如下: <?php /** * 冒泡排序 bubble sort * * 原理:多次循环进行比较,每次比较时将最大数移动到最上面。每次循环时,找出剩余变量里的最大值,...

PHP 多进程与信号中断实现多任务常驻内存管理实例方法

PHP 多进程与信号中断实现多任务常驻内存管理实例方法

本文章基于 pcntl 扩展做的多进程测试。 进程调度策略 父子进程的调度由操作系统来负责,具体先调度子进程还是父进程由系统的调度算法决定,当然可以在父进程加上延时或是调用进程回收函数...

PHP面向对象程序设计之类与反射API详解

本文实例讲述了PHP面向对象程序设计之类与反射API。分享给大家供大家参考,具体如下: 了解类 class_exists验证类是否存在 <?php // TaskRun...

浅谈php正则表达式中的非贪婪模式匹配的使用

通常我们会这么写: 复制代码 代码如下: $str = "http://www.baidu/.com?url=www.sina.com/"; preg_match("/http:(.*)...

php比较多维数组中值的大小排序实现代码

如果值没有重复的情况,可以先用array_flip()来交换键和值,然后krsort(),最后再array_flip()交换回来,就可以比较大小了。如果要截取数组,可用array_sli...