set_exception_handler

(PHP 5, PHP 7, PHP 8)

set_exception_handler Устанавливает пользовательскую функцию обработчика исключений

Описание

set_exception_handler(?callable $callback): ?callable

Функция устанавливает пользовательскую функцию как обработчик исключений по умолчанию для перехвата исключений, которые не отловили в блоке try-catch. Выполнение скрипта остановится после вызова callback-функции.

Список параметров

callback

Функция, которую требуется вызвать, когда возникнет неперехваченное исключение. В функции-обработчике определяют один параметр с типом Throwable, в который придёт объект выброшенного исключения — Error или Exception, которые реализуют интерфейс Throwable. Сигнатура обработчика:

handler(Throwable $ex): void

При передаче вместо callback-функции значения null пользовательский обработчик исключений сбрасывается на встроенный обработчик.

Возвращаемые значения

Функция возвращает предыдущий обработчик исключений или null, если возникла ошибка. Функция также возвращает null, если предыдущий обработчик не определили.

Примеры

Пример #1 Пример установки пользовательского обработчика исключений функцией set_exception_handler()

<?php

function exception_handler(Throwable $exception)
{
echo
"Неперехваченное исключение: " , $exception->getMessage(), "\n";
}

set_exception_handler('exception_handler');

throw new
Exception('Неперехваченное исключение');
echo
"Не выполняется\n";

?>

Смотрите также