• php异常处理示例


    php异常处理使用示例,代码说明了普通错误和致命错误捕获及处理的方法。
     代码如下:
    <?php
    //禁止错误输出
    error_reporting(0);
    //设置错误处理器
    set_error_handler('errorHandler');
    register_shutdown_function('fatalErrorHandler');
    class Test{
    public function index(){
    //这里发生一个警告错误,出发errorHandler 
    echo $undefinedVarible;
    }
    }
    function errorHandler($errno,$errstr,$errfile,$errline){
     $arr = array(
     '['.date('Y-m-d h-i-s').']',
     'http://www.baidu.com',
     '|',
     $errstr,
     $errfile,
     'line:'.$errline,
     ); // www.jbxue.com
     //写入错误日志
    //格式 :  时间 uri | 错误消息 文件位置 第几行

     error_log(implode(' ',$arr)." ",3,'./test.txt','extra');
     echo implode(' ',$arr)." ";
    }
    //捕获fatalError
    function fatalErrorHandler(){
     $e = error_get_last();
     switch($e['type']){
     case E_ERROR:
     case E_PARSE:
     case E_CORE_ERROR:
     case E_COMPILE_ERROR:
     case E_USER_ERROR:
      errorHandler($e['type'],$e['message'],$e['file'],$e['line']);
      break
    }
    }
    $test = new Test();
    ////这里发生一个警告错误,被errorHandler 捕获
    $test->index();
    //发生致命错误,脚本停止运行触发 fatalErrorHandler 
    $test = new Tesdt();
    $test->index();
  • 相关阅读:
    CS224N Assignment 1扩展阅读——词嵌入
    算法面经总结
    Leetcode刷题笔记(一)
    使用python-Statsmodels进行基于统计学的时间序列分析
    chinaunix book
    行政区划分
    视频网站
    sqlserver还原bak备份文件
    linux给终端设置代理
    ruby中exec,system,%x的区别
  • 原文地址:https://www.cnblogs.com/linuxnotes/p/3566544.html
Copyright © 2020-2023  润新知