PHP set_error_handler() funktion

Eksempel

Indstil brugerdefineret fejlhåndteringsprogram ved hjælp af set_error_handler() funktion, og udløs derefter en fejl (ved hjælp af trigger_error()):

<?php
 // brugerdefineret fejlhåndteringsfunktion
 function myErrorHandler($errno, $errstr, $errfile, $errline) {
     echo "<b>Brugerdefineret fejl:</b> [$errno] $errstr<br>";
     echo " Fejl på linje $errline i $errfile<br>";
 }
 // opsæt brugerdefineret fejlhåndteringsfunktion
 set_error_handler("myErrorHandler");
 $test=2;
 // Udløs fejl
 if ($test>1) {
     trigger_error("A brugerdefineret fejl er blevet udløst");
 }
 ?> 

Udskriften fra ovenstående kode ligner dette:

Brugerdefineret fejl: [1024] En brugerdefineret fejl er blevet udløst
 Fejl på linje 14 i C:\webfolder\test.php

Definition og brug

set_error_handler() funktionen sætter brugerdefinerede fejlhåndteringsfunktioner.

Kommentarer:Hvis denne funktion bruges, vil den omgå standard PHP-fejlhåndtering, og brugerdefinerede fejlprogrammer vil, hvis nødvendigt, afslutte skriptet med die().

Kommentarer:Hvis en fejl opstår før skriptets udførelse (f.eks. under filupload), vil den brugerdefinerede fejlhåndteringsfunktion ikke blive kaldt, fordi den endnu ikke er registreret på det tidspunkt.

Syntaks

set_error_handler(errorhandler,E_ALL|E_STRICT);
Parametre Beskrivelse
errorhandler Obligatorisk. Angiver navnet på brugerdefinerede fejlhåndteringsfunktioner.
E_ALL|E_STRICT Valgfri. Angiver, hvilken fejlrapportningsniveau, der skal vises, som brugerdefinerede fejl. Standard er "E_ALL".

Tekniske detaljer

Returværdi: En streng, der indeholder tidligere definerede fejlhåndteringsprogrammer.
PHP version: 4.0.1+
PHP opdateringslog:

PHP 5.5: Parametre errorhandler Accepterer nu NULL

PHP 5.2: Fejlhåndteringsprogrammer skal returnere FALSE for at vise $php_errormsg.