Beispiel
Stellen Sie eine benutzerdefinierte Fehlerbehandlungsfunktion mit der set_error_handler() Funktion und löst einen Fehler (with 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");
}
?>
Der obige Code gibt so etwas wie folgt aus:
Custom error: [1024] A custom error has been triggered
Error on line 14 in C:\webfolder\test.php
Definition und Verwendung
Die set_error_handler() Funktion stellt eine benutzerdefinierte Fehlerbehandlungsfunktion.
Note: Die Standard - PHP - Fehler - Handler vollständig umgangen werden , wenn diese Funktion verwendet wird, und die benutzerdefinierte Fehlerbehandlung muss das Skript beenden, die() , falls erforderlich.
Note: Wenn Fehler auftreten , bevor das Skript der Handler benutzerdefinierte Fehler ausgeführt wird , kann nicht verwendet werden , da es zu diesem Zeitpunkt nicht registriert ist.
Syntax
set_error_handler( errorhandler ,E_ALL|E_STRICT) ;
Parameter | Beschreibung |
---|---|
errorhandler | Erforderlich. Gibt den Namen der Funktion bei Fehlern ausgeführt werden soll |
E_ALL|E_STRICT | Optional. Gibt an, welche Fehlerberichtsebene der benutzerdefinierten Fehler angezeigt wird. Die Standardeinstellung ist "E_ALL" |
Technische Details
Rückgabewert: | Ein String, der die zuvor definierte Fehlerbehandlungsroutine enthält |
---|---|
PHP Version: | 4.0.1+ |
PHP Changelog: | PHP 5.5: Der Parameter Errorhandler akzeptiert jetzt NULL PHP 5.2: Die Fehlerbehandlung muss FALSE zurückgeben $ php_errormsg aufzufüllen |
<PHP - Fehler Referenz