本文实例讲述了Thinkphp5框架异常处理操作。分享给大家供大家参考,具体如下:
有时候服务端会报出我们无法感知的错误,TP5默认会自动渲染错误的形式,生产环境中这样的形式并不是我们想要的。
1.exception\Handle.php下的render方法需要覆盖
创建ApiHandleException.php
getMessage(), [], $this->httpCode); } }
2.修改config.php的exception_handle配置项
我们在判断一个数据是否合法的时候,若不合法则抛出异常。
例如:
if($data['msg'] != 1){
throw Exception('数据异常');
}使用内置的异常http状态码始终为500
1.创建ApiException.php
httpCode = $httpCode; $this->message = $message; $this->code = $code; } }
2.对ApiHandleException.php改写
httpCode = $e->httpCode; } return show(0, $e->getMessage(), [], $this->httpCode); } }
在开发环境的时候依旧使用异常渲染的模式
在ApiHandleException.php中添加代码
if(config('app_debug') == true) {
return parent::render($e);
}