我已经使用:
ini_set('display_errors', '1'); ini_set('display_startup_errors', '1'); error_reporting(E_ALL);
在我的代码的开头。但是,错误消息直接显示在输出中(数量很多,因此您无法很好地找到错误)。
脚本加载完成后,如何显示发生的所有错误?
您可以将错误/异常处理程序与析构函数一起使用。处理程序捕获错误,析构函数将在页面的最底部显示捕获的错误。
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();
您可以将错误/异常处理程序与析构函数一起使用。处理程序捕获错误,析构函数将在页面的最底部显示捕获的错误。