PHP - Funktion set_error_handler()
Beispiel
Setzen Sie eine benutzerdefinierte Fehlerbehandlungsfunktion mit der Funktion set_error_handler() und lösen Sie einen Fehler aus (mit trigger_error()):
<?php
// A user-defined error handler function
function myErrorHandler($errno, $errstr, $errfile, $errline) {
echo "<b>Custom error:</b> [$errno] $errstr<br>";
echo " Error on line $errline in $errfile<br>";
}
// Set user-defined error handler function
set_error_handler("myErrorHandler");
$test=2;
// Trigger error
if ($test>1) {
trigger_error("A custom error has been triggered");
}
?>
Definition und Verwendung
Die Funktion set_error_handler() setzt eine benutzerdefinierte Fehlerbehandlungsfunktion.
Hinweis: Der Standard-PHP-Error-Handler wird bei Verwendung dieser Funktion komplett umgangen und der benutzerdefinierte Error-Handler muss das Skript die() ggf. beenden.
Hinweis: Wenn Fehler auftreten, bevor das Skript ausgeführt wird, kann der benutzerdefinierte Fehlerhandler nicht verwendet werden, da er zu diesem Zeitpunkt nicht registriert ist.
Syntax
set_error_handler(errorhandler, E_ALL | E_STRICT)
Parameterwerte
Parameter | Description |
---|---|
errorhandler | Required. Specifies the name of the function to be run at errors |
E_ALL|E_STRICT | Optional. Specifies on which error report level the user-defined error will be shown. Default is "E_ALL" |
Technische Details
Rückgabewert: | Eine Zeichenfolge, die den zuvor definierten Fehlerhandler enthält |
---|---|
PHP-Version: | 4.0.1+ |
PHP-Änderungsprotokoll: | PHP 5.5: Der Parameter errorhandler akzeptiert jetzt NULL PHP 5.2: Der Errorhandler muss FALSE zurückgeben, um $php_errormsg zu füllen |
PHP-Fehlerreferenz