封装的统一的Laravel响应类,返回数据类

 Laravel  2019-11-30  admin  2675  3611

封装的统一的Laravel返回数据类

namespace App\Library;

class Response
{
    const OK = 0;

    const BAD_REQUEST = 1000;

    const PARAM_ERROR = 1001;

    const SQL_ERROR = 4000;

    const FORBIDDEN = 4003;

    const SERVER_ERROR = 5000;

    public static $errMsg = [
        self::BAD_REQUEST => '请求错误',
        self::PARAM_ERROR => '参数错误',
        self::SQL_ERROR => '数据库执行错误',
        self::FORBIDDEN => '禁止访问',
        self::SERVER_ERROR => '服务器错误',
    ];

    public static function response(array $params = [])
    {
        $data = $params['data'] ?? [];
        if (env('APP_DEBUG') && array_key_exists('e', $params) && $params['e'] instanceof \Exception) {
            $code = $params['e']->getCode();
            $msg = $params['e']->getMessage();
        } else {
            $code = $params['code'] ?? 0;
            $msg = $params['msg'] ?? (array_key_exists($code, self::$errMsg) ? self::$errMsg[$code] : '未知错误');
        }

        return response(['code' => $code, 'msg' => $msg, 'data' => $data]);
    }

}


如果文章对您有帮助,点击下方的广告,支持一下作者吧!

相关推荐


Systemd Web 管理系统:简化服务管理

# Systemd Web Systemd Web 是一个 Systemd 的 Web UI 管理系统,通过直观的界面和易用的操作,让用户能够轻松地管理 Linux 系统和服务。该项目旨在简化 Systemd 的使用,使得无论是专业的系统管理员还是普通的用户,都能够方便地对系统进行操作。 ## [github地址] (https://github.com/topascend/systemd

laravel 自定义写入日志

laravel 自定义写入日志if(!function_exists('myLog')){ /** *生成自定义文件日志内容 *@param$data *@paramstring$title *@parambool$isClear *@returnvoid *@Author:cent123.com */ functionmyLog($data,string$tit

systemctl 使用

Systemd是Linux系统工具,用来启动守护进程,已成为大多数发行版的标准配置。而systemctl是Systemd的主命令,用于管理系统。其实我们大部分服务都有使用systemctl管理,比如MySQL、Nginx等等。常见配置如下:[Unit] #单元描述 Description=GFAPP #在什么服务启动之后再执行本程序 After=mysql.service [Serv

封装 laravel 的公共队列,延迟处理任务

封装 laravel 的公共队列,延迟处理任务<?php /** *ThisfileispartofLunanShopTeam. *http://code.cent123.com/ *@authorhttp://code.cent123.com/view/387 */ namespaceApp\Jobs; useException; useIlluminate\B