如何捕获错误并打印给用户

时间:2016-03-04 19:48:21

标签: php laravel render

我试图打印通常出现在灰色屏幕中的错误,但是在html中捕获它们并显示用户使用系统。 为此,我使用了render方法和resources / views / errors / error.php文件夹中的视图,我正在执行以下操作:

public function render($request, Exception $e)
 {
   return response()->view('errors.error', [], 500);
 }

这有效地向我展示了我在error.php html文件中的内容,但希望向用户显示捕获的实际错误。

像我一样?帮助!!!

1 个答案:

答案 0 :(得分:1)

首先,您必须考虑是否确实要向用户显示错误详细信息。 (可能不是)。事实上,您在"灰色屏幕中看到的细节"根据{{​​1}}文件中APP_DEBUG的值而有所不同。

通常,您希望向用户隐藏失败背后的原因,并显示非常通用的错误消息。对于HTTP异常,异常处理程序将为您执行此操作:只需为要处理的每个http代码创建一个刀片文件(例如.env)。

如果您希望将其用于调试目的,那么有更好的工具。检查错误日志是最基本的。或者在此处使用resources/views/errors/404.blade.php函数来查看某个变量的状态。

如果您真的想要这样做,可以按照建议修改dd()文件,app/Exceptions/Handler.php方法

render