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

编程学习 2021-07-04 23:05www.dzhlxh.cn编程入门
今天长沙网络推广就为大家分享一篇laravel http 自定义公共验证和响应的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随长沙网络推广过来看看吧

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

<?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 自定义公共验证和响应的方法就是长沙网络推广分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持狼蚁SEO。

Copyright © 2016-2025 www.dzhlxh.cn 金源码 版权所有 Power by

网站模板下载|网络推广|微博营销|seo优化|视频营销|网络营销|微信营销|网站建设|织梦模板|小程序模板