错误返回

优质
小牛编辑
141浏览
2023-12-01

基类控制器里有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里会增加额外数据:

指定错误码

$this->error(['code'=>10002,'msg'=>'您的错误消息'],['title'=>'文章标题'],['XX-Author'=>'Catman']);

返回结果:

{
    "code":10002,
    "msg":"您的错误消息",
    "data":{
        "title":"文章标题"
    }
}