<?php
// $errno, $errstr, $errfile, $errline , 系统自动生成这四个变量的值(如果存在!)
function error_catcher($errno, $errstr, $errfile, $errline){
    if(!(error_reporting() && $errno)){
        return;
    }
     echo "Custom error: [$errno] $errstr<br />";
     echo " Error on line $errline in $errfile<br />";
     die();
}
set_error_handler("error_catcher");
$test = 2;
if($test > 1){
    trigger_error("you must be 1 or below");
    error_log("you must be 1 or below", 1, "dest_email_addr@qq.com", "From:m5161@qq.com");
}
//end of file c:\wamp\www\index.php
?>

  

--------------------------------------------------------------------

set_error_handler(error_function, error_types) 
    error_function             (必需)错误发生时运行的函数 
    error_types                 (可选)错误类型, 默认是 E_ALL 
    如果必要, 自定义的错误处理程序必须终止脚本, 即 die() 函数.

bool trigger_error(error_message, error_types) 
    error_message        (必需)错误消息 
    error_types              (可选)错误类型: E_USER_WARNING  /  E_USER_NOTICE  /  E_USER_ERROR 
    如果和 set_error_handler() 一起使用, 则该函数的 error_message 将会替代 $errstr .

bool error_log(error_info, type, dest, header) 
    error_info      错误信息 
    type              0  -默认,根据 php.ini 的 error_log 配置,错误消息被发送到日志系统或文件 
                         1  -错误信息被发送到 dest 指定的邮件地址,只有该类型才需要使用 header 参数 
                         3  -错误发送到文件目标字符串 
    dest              (可选)规定向何处发送错误消息 
    header         (可选)只有 type 为 1 时才使用. 规定附加的头部, 比如 From , Cc , Bcc , 由 CRLF(\r\n)分隔 
以上三个函数很重要, 通常在错误处理程序中, 组合使用!!

error_reporting 
    //禁用错误报告 
    error_reporting(0); 
    //报告运行时错误 
    error_reporting(E_ERROR | E_WARNING | E_PARSE); 
    //报告所有错误 
    error_reporting(E_ALL);

error_get_last() 
    例: 
        echo $test; 
        print_r(error_get_last());

restore_error_handler()    恢复之前的错误处理程序。 
    例:在上面的那个例子最末行加上下面这条语句 
        if($test > 1) 
        trigger_error("you must be 1 or below !!!!!!");

其他函数: 
    debug_backtrace()                     生成 backtrace。 
    debug_print_backtrace()               输出 backtrace。        
    restore_exception_handler()           恢复之前的异常处理程序。    
    set_exception_handler()               设置用户自定义的异常处理函数。

;

最新文章

  1. Git 撤销修改
  2. 关于 UICollectionViewCell 的一些陷阱
  3. Codeforces Round #195 A B C 三题合集 (Div. 2)
  4. Visual C++ for Linux Development
  5. 关于sublime text的配置方法
  6. angularJS vs backbone
  7. Win7无法设置背景图片的快速解决办法
  8. Object-C变量作用域 -- 笔记
  9. hibernate 一对多操作(级联操作)
  10. 《Javascript高级程序设计》读书笔记之继承
  11. selenium+python对页面元素进行高亮显示
  12. h1-h3使用
  13. 机器学习——线性回归-KNN-决策树(实例)
  14. Kubernetes 服务入口管理 Traefik Ingress Controller
  15. CC2541设置中断输入模式
  16. Maven手动安装jar包到仓库
  17. 2016NOI冬令营day5
  18. Android内核和Linux内核的区别
  19. 第214天:Angular 基础概念
  20. 8-3 4Values Whose Sum is Zero 和为0的四个值

热门文章

  1. 洛谷——P1186 玛丽卡
  2. eos wasm虚拟机相关接口定义实现
  3. html使用示例
  4. 关闭火狐定期向“http://detectportal.firefox.com/”发包
  5. 【前端阅读】——《编程之魂》摘记&amp;读后感&amp;思维导图
  6. 【重点突破】——Canvas技术绘制音乐播放器界面
  7. 2017.2.12 开涛shiro教程-第八章-拦截器机制
  8. Map接口及其子类
  9. 每天学点Python之bytes
  10. Linux安装httpd2.4.10