Поскольку не вежливо отвечать в другой теме, я снова задаю вопрос, связанный с этой темой:
Как регистрировать исключения контроллера ZF2
Естьзаявил, что вы можете регистрировать любые Uncaught исключения таким образом, но разве Uncaught исключения исключают дальнейшую работу веб-сервера, выполняемую PHP?Интересно, что здесь имеется в виду или пытались это сделать?
public function onBootstrap(MvcEvent $e)
{
$eventManager = $e->getApplication()->getEventManager();
$moduleRouteListener = new ModuleRouteListener();
$moduleRouteListener->attach($eventManager);
/**
* Log any Uncaught Exceptions, including all Exceptions in the stack
*/
$sharedManager = $e->getApplication()->getEventManager()->getSharedManager();
$sm = $e->getApplication()->getServiceManager();
$sharedManager->attach('Zend\Mvc\Application', 'dispatch.error',
function($e) use ($sm) {
if ($e->getParam('exception')){
$ex = $e->getParam('exception');
do {
$sm->get('Logger')->crit(
sprintf(
"%s:%d %s (%d) [%s]\n",
$ex->getFile(),
$ex->getLine(),
$ex->getMessage(),
$ex->getCode(),
get_class($ex)
)
);
}
while($ex = $ex->getPrevious());
}
}
);