Функција set_error_handler
Функцијата set_error_handler поставува кориснички обработувач за грешки.
Во првиот параметар се пренесува callback-функција, која ќе се повикува при појава на грешка.
Вториот незадолжителен параметар може да се користи за да се наведат типовите на грешки кои обработувачот треба да ги пресними.
Синтакса
set_error_handler(callable $error_handler, int $error_types = E_ALL | E_STRICT);
Пример
Прост пример за кориснички обработувач на грешки:
<?php
function customError($errno, $errstr, $errfile, $errline) {
echo "Грешка [$errno]: $errstr во $errfile на линија $errline";
}
set_error_handler("customError");
echo $undefinedVar;
?>
Резултат од извршувањето на кодот:
Грешка [8]: Недефинирана променлива: undefinedVar во /path/to/file.php на линија 7
Пример
Обработка само на одредени типови на грешки:
<?php
function warningHandler($errno, $errstr) {
if ($errno === E_WARNING) {
echo "Преснимено предупредување: $errstr";
}
}
set_error_handler("warningHandler", E_WARNING);
strpos(); // Ќе предизвика предупредување
?>
Резултат од извршувањето на кодот:
Преснимено предупредување: strpos() очекува најмалку 2 параметри, дадени 0
Пример
Враќање на стандардниот обработувач за грешки:
<?php
set_error_handler(null); // Враќање на стандардниот обработувач
?>