本博客不欢迎:各种镜像采集行为,请尊重知识产权法律法规。大家都是程序员,不要闹得不开心。

laravel作为国人永远也搞不明白的神奇框架,永远都是谜一样的存在。laravel的思路,是thinkphp党们永远都无法理解的。好吧,话说,laravel接管了PHP的错误输出,普通的try catch和@操作,似乎都是失效的..... 但是,有的时候,我们真的必须拦截相关错误信息。下面给出查看源码看出来的几个办法。

1:传统的trycatch,但是需要对exception对象做个处理,加个命名空间。

 try{ @$notice->to("aaaaaa")->uses($msg->template_id)->andUrl("afdafd")->data($data)->send(); } catch (\Exception $exception){ var_dump($exception->getCode()); exit(); } 

注意catch里面的exception前面有个“\”(一个反斜线),可能上边转义给转没了。

2: 在app/Exceptions/Handler.php的render方法,可能是您需要的。
下面是个范例:

 public function render($request, Exception $exception) { if (is_a($exception, \Symfony\Component\HttpKernel\Exception\NotFoundHttpException::class) && $request->expectsJson()) { return response()->json(['msg'=>'NotFound']); } else { return parent::render($request, $exception); } } 
如果本文对您有帮助,或者节约了您的时间,欢迎打赏瓶饮料,建立下友谊关系。
本博客不欢迎:各种镜像采集行为。请尊重原创文章内容,转载请保留作者链接。