Hab*_*wad 1 exception-handling symfony
每当我收到错误时Fatal error: Call to a member function getName() on a non-object in /var/www/...Controller.php on line 143
,我的symfony2-app会在prod-environment中显示一个空白页面.以上消息在dev-environment中可用.我想在prod-environment中显示这样的错误的自定义页面.如何在Symfony2中实现它?
更新:可以kernel.event_listener
帮帮我吗?
你无法在symfony中真正实现它.symfony不会处理致命错误,而是由PHP扩展本身处理.Symfony代码永远不会有机会完成执行,因为致命错误让php通过自己的设备处理错误.PHP错误处理由error_reporting()和set_error_handler()设置的error_handler设置.在开发环境中, php错误报告设置为E_ALL以显示所有错误.在生产环境中,错误和调试消息设置为0,并且出于美观和安全原因而不显示(某些错误消息可能显示密码等).最好的建议是在部署到生产之前修复所有致命错误.要捕获并显示致命错误的自定义页面必须使用php set错误处理 - http://php.net/manual/en/function.set-error-handler.php.
对于非致命错误,您可以创建可显示的自定义错误页面视图 - http://symfony.com/doc/2.0/cookbook/controller/error_pages.html
归档时间: |
|
查看次数: |
2140 次 |
最近记录: |