PHP如何在脚本加载完成后显示错误?
P粉585541766
P粉585541766 2024-04-03 22:11:06
0
1
501

我已经使用:

ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');
error_reporting(E_ALL);

在我的代码的开头。但是,错误消息直接显示在输出中(数量很多,因此您无法很好地找到错误)。

脚本加载完成后,如何显示发生的所有错误?

P粉585541766
P粉585541766

全部回复(1)
P粉521697419

您可以将错误/异常处理程序与析构函数一起使用。处理程序捕获错误,析构函数将在页面的最底部显示捕获的错误。

class ErrorHandler {
    private static $instance = null;
    private static $errors = [];
    
    public static function Init() {
        if(!self::$instance) {
            self::$instance = new self;
            
            set_error_handler(function($errno, $errstr, $errfile, $errline){
                self::$errors[] = new ErrorException($errstr, 0, $errno, $errfile, $errline);
            });
            
            set_exception_handler(function($ex){
                self::$errors[] = $ex;
            });
        }
    }
    
    function __destruct(){
        foreach(self::$errors as $errstr)
            echo $errstr, '
'; } } ErrorHandler::Init();
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板