封裝的統一的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]);
}
}