catch не работает, поскольку установлен обработчик исключений с помощью set_exception_handler ()
Мне нужно "catch" для работы, так что, думаю, мне нужно как-то сбросить обработчик исключений. Такие вещи, как set_exception_handler (NULL) не работают.
Есть идеи, как сбросить обработчик исключений?
function my_exception_handler($exception) {
error_log("caught exception: " . $exception->getMessage() );
}
set_exception_handler("my_exception_handler");
// QUESTION: how does on unset it ?
//set_exception_handler(NULL);
try {
throw new Exception('hello world');
error_log("should not happen");
} catch(Exception $e) {
error_log("should happen: " . $e->getMessage());
}
Фактическая выработка:
пойман исключение: привет мир
Желаемый вывод:
должно произойти: привет мир