Funkcia set_error_handler
Funkcia set_error_handler nastavuje používateľský handler chýb.
Do prvého parametra sa odovzdáva callback funkcia, ktorá sa bude volať pri vzniku chyby.
Druhým voliteľným parametrom je možné uviesť typy chýb, ktoré má handler zachytávať.
Syntax
set_error_handler(callable $error_handler, int $error_types = E_ALL | E_STRICT);
Príklad
Jednoduchý príklad používateľského handlera chýb:
<?php
function customError($errno, $errstr, $errfile, $errline) {
echo "Chyba [$errno]: $errstr v $errfile na riadku $errline";
}
set_error_handler("customError");
echo $undefinedVar;
?>
Výsledok vykonania kódu:
Chyba [8]: Nedefinovaná premenná: undefinedVar v /path/to/file.php na riadku 7
Príklad
Spracovanie len určitých typov chýb:
<?php
function warningHandler($errno, $errstr) {
if ($errno === E_WARNING) {
echo "Varovanie zachytené: $errstr";
}
}
set_error_handler("warningHandler", E_WARNING);
strpos(); // Spôsobí varovanie
?>
Výsledok vykonania kódu:
Varovanie zachytené: strpos() očakáva aspoň 2 parametre, 0 zadaných
Príklad
Návrat k štandardnému handleru chýb:
<?php
set_error_handler(null); // Návrat k štandardnému handleru
?>