'status', 'message_var' => 'message', 'data_var' => 'data', 'states' => [ 'success' => [ 'status' => 200, 'message' => '操作成功!', 'data' => [] ], 'error' => [ 'status' => 2001, 'message' => '操作错误!', 'data' => [] ], ] ]; private function __construct($errno) { isset($errno) || die('请确认返回类型!'); $this->config = config('apiret'); $this->state = $this->config['states'][$errno]; return $this; } // 单例 public static function result($errno): Api { if (!self::$response) { self::$response = new self($errno); } return self::$response; } // 写入返回信息 public function message($message=''): Api { $message ? $this->state[$this->config['message_var']] = $message : ''; return $this; } // 返回错误 public static function error($msg='', $data=[], $status_code = 200): \think\response\Json { $ins = self::result('error'); if ($msg) { $ins = $ins->message($msg); } return $ins->response($data, $status_code); } // 返回成功 public static function success($msg='', $data=[], $status_code = 200): \think\response\Json { $ins = self::result('success'); if ($msg) { $ins = $ins->message($msg); } return $ins->response($data, $status_code); } // 返回结果 public function response($data=[], $status_code = 200): \think\response\Json { $this->state[$this->config['data_var']] = $data; return \think\Response::create($this->state, 'json', $status_code); } }