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基础知识:函数基础知识
Dec 13 PHP
Php Ctemplate引擎开发相关内容
Mar 03 PHP
PHP仿博客园 个人博客(2) 数据库增添改删
Jul 05 PHP
PHP批量生成静态HTML的简单原理和方法
Apr 20 PHP
php cookie名使用点号(句号)会被转换
Oct 23 PHP
thinkphp命名空间用法实例详解
Dec 30 PHP
分享php邮件管理器源码
Jan 06 PHP
PHP上传图片、删除图片简单实例
Nov 12 PHP
PHP正则匹配到2个字符串之间的内容方法
Dec 24 PHP
php设计模式之适配器模式原理、用法及注意事项详解
Sep 24 PHP
laravel 去掉index.php伪静态的操作方法
Oct 12 PHP
TP5框架使用QueryList采集框架爬小说操作示例
Mar 26 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
使用数据库保存session的方法
2006/10/09 PHP
PHP+ajax实现二级联动菜单功能示例
2018/08/10 PHP
ThinkPHP框架实现的微信支付接口开发完整示例
2019/04/10 PHP
jquery中的事件处理详细介绍
2013/06/24 Javascript
JQuery EasyUI 日期控件如何控制日期选择区间
2014/05/05 Javascript
jQuery控制元素显示、隐藏、切换、滑动的方法总结
2015/04/16 Javascript
轻松学习jQuery插件EasyUI EasyUI实现树形网络基本操作(2)
2015/11/30 Javascript
详解JavaScript函数
2015/12/01 Javascript
详解在Vue中如何使用axios跨域访问数据
2017/07/07 Javascript
vue 实现单选框设置默认选中值
2019/11/07 Javascript
如何使用原生Js实现随机点名详解
2021/01/06 Javascript
[05:43]VG.R战队教练Mikasa专访:为目标从未停止战斗
2016/08/02 DOTA
[00:38]TI珍贵瞬间系列(二):笑
2020/08/26 DOTA
python学习笔记:字典的使用示例详解
2014/06/13 Python
python基于windows平台锁定键盘输入的方法
2015/03/05 Python
详解Python编程中包的概念与管理
2015/10/16 Python
获取python文件扩展名和文件名方法
2018/02/02 Python
Python推导式简单示例【列表推导式、字典推导式与集合推导式】
2018/12/04 Python
解析python的局部变量和全局变量
2019/08/15 Python
Python queue队列原理与应用案例分析
2019/09/27 Python
python3从网络摄像机解析mjpeg http流的示例
2020/11/13 Python
python 实时调取摄像头的示例代码
2020/11/25 Python
HTML5 Canvas如何实现纹理填充与描边(Fill And Stroke)
2013/07/15 HTML / CSS
APM Monaco中国官网:来自摩纳哥珠宝品牌
2017/12/27 全球购物
简短的公司员工自我评价分享
2013/11/13 职场文书
人事行政主管岗位职责
2013/12/22 职场文书
大学生的网络创业计划书
2013/12/26 职场文书
借款协议书
2014/09/16 职场文书
2015年禁毒宣传活动总结
2015/03/25 职场文书
房地产销售员岗位职责
2015/04/11 职场文书
人事任命通知
2015/04/20 职场文书
如何写好一份优秀的工作总结?
2019/06/21 职场文书
如何使用Python提取Chrome浏览器保存的密码
2021/06/09 Python
Prometheus 监控MySQL使用grafana展示
2021/08/30 MySQL
Python人工智能之混合高斯模型运动目标检测详解分析
2021/11/07 Python
mapstruct的用法之qualifiedByName示例详解
2022/04/06 Java/Android