laravel http 自定义公共验证和响应的方法

时间:2021-12-11 06:09:47

我就废话不多说了,直接上代码吧,大家一起来看看

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
<?php
 
namespace App\Services;
use Validator;
 
class Http
{
 
  /***
   * 响应成功返回的函数
   *
   * @param $message
   * @param $content
   * @param int $status
   * @return \Illuminate\Http\JsonResponse
   * @internal param $data
   */
  public function success($message,$content="",$status=200)
  {
    if(is_array($content)&&count($content)<1){
      $data['content']=$content;
      $data['code']=0;
      $data['msg']="数据不存在";
      return response()->json($data,$status);
    }
    $data['content']=$content;
    $data['code']=1;
    $data['msg']=$message;
    return response()->json($data,$status);
  }
 
  /***
   * 响应错误返回的函数
   *
   * @param $message
   * @param int $status
   * @return \Illuminate\Http\JsonResponse
   */
  public function error($message,$status=200)
  {
    $data['code']=0;
    $data['msg']=$message;
    return response()->json($data,$status);
  }
 
 
  /***
   * 响应错误返回的函数
   *
   * @param $message
   * @param $content
   * @param int $status
   * @return \Illuminate\Http\JsonResponse
   */
  public function errorWithData($message,$content,$status=200)
  {
    $data['code']=0;
    $data['data']=$content;
    $data['msg']=$message;
    return response()->json($data,$status);
  }
 
  /***
   * 验证字段属性
   *
   * @param $all
   * @param $rules
   * @param bool $message
   * @return array|bool|string
   */
  public function validate($all,$rules,$message=false){
    if(!$message){
      $message=$this->getMessage();
    }
    $validator = Validator::make($all, $rules,$message);
    if ($validator->fails()) {
      $array = array_flatten($validator->errors()->toArray());
      $message=implode(' ',$array);
      return $message;
    }
    return false;
  }
 
  /***
   * 返回验证message
   * @return array
   */
  public function getMessage(){
    return [
      'required' => '字段 :attribute 是必须的.',
      'unique' => '该数据已经存在.',
      'between' => '字段 :attribute 必须在 :min - :max.之间',
    ];
  }
 
}

以上这篇laravel http 自定义公共验证和响应的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/u012946588/article/details/79165677