ВНИМАНИЕ: Запись на курсы по HTML, CSS, JavaScript, PHP, Python, React, Vue, Laravel и другим фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
377 of 410 menu
Бесплатный курс по выкладке сайтов на хостинг. Разбираем все нюансы! Начало 14 октября. Жми для записи!

Функция 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 "Error [$errno]: $errstr in $errfile on line $errline"; } set_error_handler("customError"); echo $undefinedVar; ?>

Результат выполнения кода:

Error [8]: Undefined variable: undefinedVar in /path/to/file.php on line 7

Пример

Обработка только определенных типов ошибок:

<?php function warningHandler($errno, $errstr) { if ($errno === E_WARNING) { echo "Warning captured: $errstr"; } } set_error_handler("warningHandler", E_WARNING); strpos(); // Вызовет предупреждение ?>

Результат выполнения кода:

Warning captured: strpos() expects at least 2 parameters, 0 given

Пример

Возврат стандартного обработчика ошибок:

<?php set_error_handler(null); // Возврат к стандартному обработчику ?>
byenru