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


Posted in PHP onSeptember 29, 2019

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

<?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 自定义公共验证和响应的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
基于php 随机数的深入理解
Jun 05 PHP
单台服务器的PHP进程之间实现共享内存的方法
Jun 13 PHP
CodeIgniter采用config控制的多语言实现根据浏览器语言自动转换功能
Jul 18 PHP
ThinkPHP上使用多说评论插件的方法
Oct 31 PHP
浅谈php命令行用法
Feb 04 PHP
PHP响应post请求上传文件的方法
Dec 17 PHP
PHP正则获取页面所有图片地址
Mar 23 PHP
php简单实现多维数组排序的方法
Sep 30 PHP
PHP中for循环与foreach的区别
Mar 06 PHP
php中通过eval实现字符串格式的计算公式
Mar 18 PHP
PHP基于堆栈实现的高级计算器功能示例
Sep 15 PHP
PHP实现获取url地址中顶级域名的方法示例
Jun 05 PHP
laravel5.2表单验证,并显示错误信息的实例
Sep 29 #PHP
laravel 验证错误信息到 blade模板的方法
Sep 29 #PHP
php写app用的框架整理
Sep 29 #PHP
php使用json-schema模块实现json校验示例
Sep 28 #PHP
php中文语义分析实现方法示例
Sep 28 #PHP
PHP迭代器和生成器用法实例分析
Sep 28 #PHP
php实现的数组转xml案例分析
Sep 28 #PHP
You might like
萌王史莱姆”萌王性别尴尬!那“萌战”归女组还是男?
2018/12/17 日漫
phpMyAdmin 链接表的附加功能尚未激活问题的解决方法(已测)
2012/03/27 PHP
从零开始学YII2框架(六)高级应用程序模板
2014/08/20 PHP
PHP翻页跳转功能实现方法
2020/11/30 PHP
Laravel实现表单提交
2017/05/07 PHP
PHP+AJAX 投票器功能
2017/11/11 PHP
用于自动添加Digg This!按钮的JavaScript
2006/12/23 Javascript
JavaScript中的对象化编程
2008/01/16 Javascript
js获取单元格自定义属性值的代码(IE/Firefox)
2010/04/05 Javascript
js获取本机的外网/广域网ip地址完整源码
2013/08/12 Javascript
jquery如何获取复选框的值
2013/12/12 Javascript
元素绑定click点击事件方法
2015/06/08 Javascript
jQuery插件扩展操作入门示例
2017/01/16 Javascript
node.js+jQuery实现用户登录注册AJAX交互
2017/04/28 jQuery
nodejs微信扫码支付功能实现
2018/02/17 NodeJs
Node.js EventEmmitter事件监听器用法实例分析
2019/01/07 Javascript
JS前端广告拦截实现原理解析
2020/02/17 Javascript
详解python中字典的循环遍历的两种方式
2017/02/07 Python
Python多继承原理与用法示例
2018/08/23 Python
numpy和pandas中数组的合并、拉直和重塑实例
2019/06/28 Python
使用NumPy读取MNIST数据的实现代码示例
2019/11/20 Python
python实现ssh及sftp功能(实例代码)
2020/03/16 Python
用python读取xlsx文件
2020/12/17 Python
Html5实现用户注册自动校验功能实例代码
2016/05/24 HTML / CSS
香蕉共和国Banana Republic官网:美国GAP旗下偏贵族风格服饰品牌
2016/11/21 全球购物
Pop In A Box英国:Funko POP搪胶公仔
2019/05/27 全球购物
Yankee Candle官网:美国最畅销蜡烛品牌之一
2020/01/05 全球购物
运动会方阵解说词
2014/02/12 职场文书
小学生环保标语
2014/06/13 职场文书
中层干部培训方案
2014/06/16 职场文书
不听老师话的万能检讨书
2014/10/04 职场文书
2014年学生会个人工作总结
2014/11/07 职场文书
惹女朋友生气检讨书
2015/05/06 职场文书
孙振耀退休感言
2015/08/01 职场文书
利用 SQL Server 过滤索引提高查询语句的性能分析
2021/07/15 SQL Server
JavaScript实现栈结构详细过程
2021/12/06 Javascript