Исключения PHP, обработанные обработчиком ошибок, не попадают в обработчик исключений

Я использую следующую функцию, чтобы установить собственный обработчик ошибок и обработчик исключений.

set_error_handler set_exception_handler 

Обработчик ошибок преобразует ошибки в исключение. (генерирует новое исключение)

Но эти исключения не пойманы моим собственным обработчиком исключений.

пример обработчика ошибок:

 function errorHandler($errno, $errstr, $errfile, $errline, $errcontext) { throw new Exception("this was an error"); } 

пример обработчика исключений:

 function exceptionHandler($e){ // don't get here when exception is thrown in error handler Logger::logException($e); } 

(Я думаю, что это не сработает)

Должно ли это работать?

Или может кто-то объяснить, почему он не может работать?

РЕДАКТИРОВАТЬ:

Я сделал несколько тестов, и он должен работать.

Исключения, сброшенные в ErrorHandler, попадают в ExceptionHandler, а ошибки, вызванные в ExceptionHandler, обрабатываются ErrorHandler

Просто FYI.

Моя проблема должна быть в другом месте


РЕДАКТИРОВАТЬ:

Я все еще не нашел, почему исключение, заброшенное в моем errorHandler, не попало в мое исключениеHandler.

Например, когда у меня есть это где-то в коде.

 trigger_error("this is an error"); // gets handled by the errorHandler throw new Exception("this is an exception"); // gets handler by the exceptionHandler 

Ошибка обрабатывается errorHandler, но исключение, созданное в errorHandler, не обрабатывается исключениемHandler.

Но если я создаю исключение в том же месте, где я вызываю ошибку, это исключение обрабатывается обработчиком исключений.

(Надеюсь, это как-то понятно, что я имею в виду)

Я здесь невежественный. Любые идеи, в которых я должен искать проблему?

Related of "Исключения PHP, обработанные обработчиком ошибок, не попадают в обработчик исключений"