仰望星辰工作室

better-staridc-MNBT

better-staridc-MNBT/ MPHX/Response.php 1.6 KB · 51 行 原始文件
Z zfhsh first commit 1 天前
1<?php
2if (!defined('IN_CRONLITE')) exit();
3
4class Response
5{
6 public static function build($code, $msg = null, $data = null, $redirect = null, $success = null)
7 {
8 if ($msg === null) $msg = is_scalar($code) ? (string)$code : '返回信息';
9 if ($success === null) {
10 $success = !in_array((string)$code, ['0', '4', '100', '300'], true);
11 }
12 $result = [
13 'success' => (bool)$success,
14 'code' => $code,
15 'msg' => $msg,
16 'redirect' => $redirect,
17 ];
18 if ($data !== null) $result['data'] = $data;
19 return $result;
20 }
21
22 public static function json($code, $msg = null, $data = null, $redirect = null, $success = null)
23 {
24 return json_encode(self::build($code, $msg, $data, $redirect, $success), JSON_UNESCAPED_UNICODE);
25 }
26
27 public static function success($msg, $data = null, $redirect = null)
28 {
29 return self::json($msg, $msg, $data, $redirect, true);
30 }
31
32 public static function error($msg, $data = null, $redirect = null)
33 {
34 return self::json($msg, $msg, $data, $redirect, false);
35 }
36
37 public static function exit_json($code, $msg = null, $data = null, $redirect = null, $success = null)
38 {
39 exit(self::json($code, $msg, $data, $redirect, $success));
40 }
41
42 public static function exit_success($msg, $data = null, $redirect = null)
43 {
44 exit(self::json($msg, $msg, $data, $redirect, true));
45 }
46
47 public static function exit_error($msg, $data = null, $redirect = null)
48 {
49 exit(self::json($msg, $msg, $data, $redirect, false));
50 }
51}