我在开发人员上使用Whoops错误库(并且喜欢它)来显示PrettyPageHandler,如下所示:
if (ENVIRONMENT == 'local') { $whoops = new \Whoops\Run; $whoops->pushHandler(new \Whoops\Handler\PrettyPageHandler); $whoops->register(); }
对于直播,我正在使用CallbackHandler向最终用户显示“用户友好”错误消息.
无论如何将PrettyPageHandler的结果/输出保存到数据库甚至文件系统中?我的想法是向最终用户显示友好的错误页面,但同时使用PrettyPageHandler记录错误,以回顾和调试用户得到的错误.
如文档中所述:
$run->pushHandler(function($exception,$inspector,$run) { var_dump($exception->getMessage()); return Handler::DONE; });
替换var_dump($exception-> getMessage());使用您的自定义代码保存到数据库或文件日志.
https://github.com/filp/whoops/blob/master/docs/API%20Documentation.md#core-handlers-1
EDIT1:
要使用PrettyPageHandler保存日志,请创建一个从PrettyPageHandler扩展的自定义处理程序,并在句柄返回格式化响应之前将响应返回给用户,以所需格式保存在数据库或文件系统中.