Wie zeigt PHP einen Fehler an, nachdem das Skript vollständig geladen wurde?
P粉585541766
P粉585541766 2024-04-03 22:11:06
0
1
500

Ich habe verwendet:

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

Am Anfang meines Codes. Allerdings werden die Fehlermeldungen direkt in der Ausgabe angezeigt (es gibt viele davon, sodass man die Fehler nicht so gut finden kann).

Wie zeige ich alle Fehler an, die nach dem Laden des Skripts aufgetreten sind?

P粉585541766
P粉585541766

Antworte allen(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();
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage