set_exception_handler
Задаёт пользовательский обработчик исключений
&reftitle.description;
callableset_exception_handlercallableexception_handler
Задаёт обработчик по умолчанию для случаев, когда исключение выброшено
вне блока try/catch. После вызова exception_handler
выполнение будет остановлено.
&reftitle.parameters;
exception_handler
Имя функции, которая будет вызываться каждый раз, когда выбрасывается
неперехватываемое исключение. Функция-обработчик
должна принимать один аргумент - объект, представляющий выброшенное
исключение. До PHP 7 такая функция выглядит так:
voidhandlerExceptionex
В PHP 7 большинство внутренних ошибок теперь генерируют исключение, но класса
Error. Для них также будет вызываться указанный
обработчик исключений. Классы Error и
Exception реализуют интерфейс Throwable,
соответственно именно его следует использовать в сигнатуре функции-обработчика:
voidhandlerThrowableex
В качестве этого аргумента можно передать &null;. В этом случае
обработчик вернётся к своему изначальному состоянию.
Указание типа Exception для параметра
ex в вашей функции-обработчике приведёт
к проблемам в PHP 7 из-за изменённой иерархии классов исключений.
&reftitle.returnvalues;
Возвращает имя предыдущего заданного обработчика или &null; в случае
ошибки. Если предыдущих обработчиков определено не было, то также
возвращается &null;.
&reftitle.examples;
Пример использования set_exception_handler
getMessage(), "\n";
}
set_exception_handler('exception_handler');
throw new Exception('Неперехваченное исключение');
echo "Не выполнено\n";
?>
]]>
&reftitle.seealso;
restore_exception_handlerrestore_error_handlererror_reportingИсключения PHP 5