set_error_handler
Setzen Sie benutzerdefinierte Fehlerbehandlungsfunktionen
set_error_handler()
legt eine benutzerdefinierte Fehlerbehandlungsfunktion fest.
HINWEIS: Wenn Sie diese Funktion verwenden, wird der Standard-PHP-Fehlerhandler umgangen, und bei Bedarf beendet das benutzerdefinierte Fehlerprogramm das Skript mit Die ().
Hinweis: Wenn der Fehler vor der Ausführung des Skripts auftritt (z. B. wenn die Datei hochgeladen wird), wird der benutzerdefinierte Fehlerbehandler nicht aufgerufen, da er zu diesem Zeitpunkt nicht registriert wurde.
Setzen Sie den benutzerdefinierten Fehlerhandler über set_error_handler()
und dann den Fehler aus (über trigger_error()
):
<? Php // Benutzerdefinierte Fehlerbehandlungsfunktion Funktion myerrorHandler ( $ errno , $ errstr , $ errfile , $ errline ) { echo "<b> benutzerdefinierter Fehler: </b> [ $ errno ] $ errstr <br>" ; echo "Fehler in Zeile $ errline in $ errfile <br>" ; } // Benutzerdefinierte Fehlerbehandlungsfunktionen festlegen set_error_handler ( "myerrorHandler" ) ; $ test = 2 ; // einen Fehler auslösen if ( $ test > 1 ) { Trigger_error ( "Ein benutzerdefinierter Fehler wurde ausgelöst" ) ; } ?>
Die Ausgabe des obigen Codes ähnelt folgendermaßen:
Benutzerdefinierte Fehler: [1024] Es wurde ein benutzerdefinierter Fehler ausgelöst Fehler in Zeile 14 in C: \ WebFolder \ test.php
set_error_handler ( Fehlerhandler , e_all | e_strict ) ;
Parameter | beschreiben |
---|---|
Fehlerhandler | Erforderlich. Gibt den Namen der Benutzerfunktionsfunktion an. |
E_all | e_strict | Optional. Gibt die benutzerdefinierten Fehler an, die die Fehlerberichterstattungsstufe anzeigen. Die Standardeinstellung ist "e_all". |