首页 热点专区 义务教育 高等教育 出国留学 考研考公
您的当前位置:首页正文

php如何自定义错误处理

2020-11-02 来源:要发发教育

php自定义错误处理的方法:可以利用set_error_handler()函数来实现。该函数可以设置用户定义的错误处理函数,例如【set_error_handler("my_define_error")】。

自定义错误处理:

在错误发生时由我们自己来处理、设定一个错误处理的函数。

(视频教程推荐:php视频教程)

set_error_handler() 函数设置用户定义的错误处理函数。

语法:

set_error_handler(errorhandler,E_ALL|E_STRICT);

参数:

  • errorhandler 必需。规定用户错误处理函数的名称。

  • E_ALL|E_STRICT 可选。规定显示何种错误报告级别的用户定义错误。默认是 "E_ALL"。

  • 比如:set_error_handler(“my_define_error”);

    然后定义该函数,在函数中详细设定错误的处理情况。

    语法:

    function my_define_error(errCode,errCode,errCode,errMsg,errFile,errFile,errFile,errLine){
     函数内部写入处理错误的代码
    }

    (相关教程推荐:php图文教程)

    注意:此形参的顺序是规定的,而且是由系统会统一调用的函数,并传输实际参数数据。

    注意:自定义错误只能处理“非致命错误”,也就是说无法处理E_ERROR错误。

    代码实现:

    <?php // 用户定义的错误处理函数
     function myErrorHandler($errno, $errstr, $errfile, $errline) {
     echo "<b>Custom error:</b> [$errno] $errstr<br>";
     echo " Error on line $errline in $errfile<br>";
     } // 设置用户定义的错误处理函数
     set_error_handler("myErrorHandler");
    
     $test=2; // 触发错误
     if ($test>1) {
     trigger_error("A custom error has been triggered");
     }
     ?>

    输出结果:

    Custom error: [1024] A custom error has been triggered
     Error on line 14 in C:webfolder	est.php
    显示全文