restore_exception_handler
(PHP 5, PHP 7)
restore_exception_handler — Восстанавливает предыдущий обработчик исключений
Описание
bool restore_exception_handler
( void
)
Используется после смены обработчика исключений функцией set_exception_handler(), чтобы вернуть предыдущий обработчик (который может быть как встроенной функцией, так и определенной пользователем).
Возвращаемые значения
Эта функция всегда возвращает TRUE
.
Примеры
Пример #1 Пример использования restore_exception_handler()
<?php
function exception_handler_1(Exception $e)
{
echo '[' . __FUNCTION__ . '] ' . $e->getMessage();
}
function exception_handler_2(Exception $e)
{
echo '[' . __FUNCTION__ . '] ' . $e->getMessage();
}
set_exception_handler('exception_handler_1');
set_exception_handler('exception_handler_2');
restore_exception_handler();
throw new Exception('Вызван первый обработчик исключений...');
?>
Результат выполнения данного примера:
[exception_handler_1] Вызван первый обработчик исключений...
Смотрите также
- set_exception_handler() - Задает пользовательский обработчик исключений
- set_error_handler() - Задает определенный пользователем обработчик ошибок
- restore_error_handler() - Восстанавливает предыдущий обработчик ошибок
- error_reporting() - Задает, какие ошибки PHP попадут в отчет
Коментарии
Note that this does not work within an exception handler.
e.g.
<?php
function handler1(Exception $e) {
echo "handler1\n";
restore_exception_handler();
throw $e;
}
function handler2(Exception $e) {
echo "handler2\n";
}
set_exception_handler( 'handler2' );
set_exception_handler( 'handler1' );
throw new Exception( 'might expect to see handler1, handler2' );
/* Outputs:
handler1
PHP Fatal error: Uncaught exception 'Exception' with message 'might expect to see handler1, handler2' in /tmp/demo.php:15
Stack trace:
#0 {main}
thrown in /tmp/demo.php on line 15
*/
?>