基类控制器里有`error`方法,用于`api`的错误消息返回输出 ``` /** * 操作错误跳转的快捷方法 * @access protected * @param mixed $msg 提示信息,若要指定错误码,可以传数组,格式为['code'=>您的错误码,'msg'=>'您的错误消息'] * @param mixed $data 返回的数据 * @param array $header 发送的Header信息 * @return void */ protected function error($msg = '', $data = '', array $header = []) ``` 有几种用法如下: ## 只输出错误消息 ``` $this->error('操作失败!'); ``` 返回结果: ``` { "code":0, "msg":"操作失败!", "data":"" } ``` ## 携带数据 ``` $this->error('操作失败!',['title'=>'文章标题']); ``` 返回结果 ``` { "code":0, "msg":"操作失败!", "data":{ "title":"文章标题" } } ``` > 第二个参数`$data`,支持多种格式,可以是int,float,string,array 等 ## 自己携带额外header 数据 ``` $this->error('操作失败!',['title'=>'文章标题'],['XX-Author'=>'Catman']); ``` 返回结果: ``` { "code":0, "msg":"操作失败!", "data":{ "title":"文章标题" } } ``` 但 response header里会增加额外数据: ![](https://box.kancloud.cn/af213ea895ddebd13524b0fd20051022_1806x884.png) ## 指定错误码 ``` $this->error(['code'=>10002,'msg'=>'您的错误消息'],['title'=>'文章标题'],['XX-Author'=>'Catman']); ``` 返回结果: ``` { "code":10002, "msg":"您的错误消息", "data":{ "title":"文章标题" } } ```