1 新建文件夾以及文件php
路徑: /application/lib/exception/ExceptionHandler.php
並鍵入如下代碼
json
<?php namespace app\lib\exception; use think\Exception; use think\config; use think\exception\Handle; /** * 自定義異常類 */ class ExceptionHandler extends Handle { /** * http狀態碼 * @var unknown */ public $httpCode = 500; public function render(\Exception $e){ $debug_status = config("app_debug"); if($debug_status){ return parent::render($e); }else{ return $this->show(2, $e->getMessage(), [], $this->httpCode); } } /** * 通用化API接口數據輸出 * @param int $status 操做成功仍是失敗: 1 成功 2 失敗 * @param int $errorcode 業務錯誤狀態碼 * @param string $msg 信息提示 * @param [] $result 數據 * @param int $httpCode http狀態碼 */ public function show($status, $message ,$data = [] ,$httpCode = 200) { $data = [ 'status' => $status, 'errorcode'=>'100000', 'msg' => $message, 'result' =>$data ]; return json($data, $httpCode); } }
爲了便於調試。引入 config文件, debug開啓時候。會正常顯示錯誤信息。。debug關閉。則是json數據app
2 修改 config.php中的 exception_handle , 接管異常處理this
// 異常處理handle類 留空使用 \think\exception\Handle 'exception_handle' => '\app\lib\exception\ExceptionHandler',