Laravel validate error处理,ajax,json示例


Posted in PHP onOctober 25, 2019

如下所示:

public function updateLevelTestRecords(Request $request) {
  $rules = [
   'uid' => 'required|integer',
   'level_test_page_id' => 'required',
   'level_test_progress_id' => 'required',
   'cost_time' => 'required',
   'score' => 'required',
  ];
  $validator = Validator::make($request->all(), $rules);
  if ($validator->fails()) {
   // return $this->outPutJson($validator->errors(), 10016);
   return $this->outPutJson($validator->errors()->all(), 10016);
  }
 }

1、$validator->errors()返回的错误消息,带表单下标:

Laravel validate error处理,ajax,json示例

2、$validator->errors()->all()返回的错误消息,不带表单下标:

Laravel validate error处理,ajax,json示例

3、outPutJson是我自定义的方法,简单而且非常好用!

public function outPutJson($data, $code = 200, $message = NULL) {
 $message = $message ?? config('response_code')[$code];
 return \Response::json(['message' => $message, 'status_code' => $code, 'data' => $data]);
 }

3、我上面的方法是ajax等接口之类的请求,如果是web应用,直接用validate就可以了:

public function store(Request $request)
{
 $validatedData = $request->validate([
  'title' => 'required|unique:posts|max:255',
  'body' => 'required',
 ]);

 // The blog post is valid...
}

4、如果验证不通过,会直接跳转到请求页面,并把错误消息闪存到session,前台页面调用错误消息方法如下:

@if ($errors->any())
 <div class="alert alert-danger">
  <ul>
   @foreach ($errors->all() as $error)
    <li>{{ $error }}</li>
   @endforeach
  </ul>
 </div>
@endif

2、validate实现的原理,laravel 5.5的可以参考这个文件。

D:\phpStudy\WWW\BCCKidAdmin\vendor\laravel\framework\src\Illuminate\Validation\Concerns\ValidatesAttributes.php

部分源代码如下:

#验证整数
public function validateInteger($attribute, $value)
{
 return filter_var($value, FILTER_VALIDATE_INT) !== false;
}

#验证ip
public function validateIp($attribute, $value)
{
 return filter_var($value, FILTER_VALIDATE_IP) !== false;
}

其实php已经做了很多验证,我们平时都没注意,可以去详细查看一下filter_var这个函数。

以上这篇Laravel validate error处理,ajax,json示例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
转PHP手册及PHP编程标准
Dec 17 PHP
ThinkPHP写第一个模块应用
Feb 20 PHP
PHP数组传递是值传递而非引用传递概念纠正
Jan 31 PHP
从PHP的源码中深入了解stdClass类
Apr 18 PHP
php获取URL中带#号等特殊符号参数的解决方法
Sep 02 PHP
Discuz!X中SESSION机制实例详解
Sep 23 PHP
php获取一定范围内取N个不重复的随机数
May 28 PHP
浅谈PHP表单提交(POST&amp;GET&amp;URL编/解码)
Apr 03 PHP
Laravel中log无法写入问题的解决
Jun 17 PHP
kindeditor 加入七牛云上传的实例讲解
Nov 12 PHP
ajax+php实现无刷新验证手机号的实例
Dec 22 PHP
PHP遍历数组的6种方式总结
Nov 17 PHP
laravel 错误处理,接口错误返回json代码
Oct 25 #PHP
laravel 实现用户登录注销并限制功能
Oct 24 #PHP
Laravel 5.5 实现禁用用户注册示例
Oct 24 #PHP
laravel5.5安装jwt-auth 生成token令牌的示例
Oct 24 #PHP
对laravel的csrf 防御机制详解,及form中csrf_token()的存在介绍
Oct 24 #PHP
Laravel (Lumen) 解决JWT-Auth刷新token的问题
Oct 24 #PHP
laravel5.1 ajax post 传值_token示例
Oct 24 #PHP
You might like
雄兵连三大错觉:凯莎没了,凉冰阵亡了,华烨觉得自己又行了
2020/04/09 国漫
php include的妙用,实现路径加密
2008/07/29 PHP
php 生成短网址原理及代码
2014/01/23 PHP
ThinkPHP自动转义存储富文本编辑器内容导致读取出错的解决方法
2014/08/08 PHP
php实现的DateDiff和DateAdd时间函数代码分享
2014/08/16 PHP
PHP的Yii框架中创建视图和渲染视图的方法详解
2016/03/29 PHP
PHP GD库相关图像生成和处理函数小结
2016/09/30 PHP
Laravel日志用法详解
2016/10/09 PHP
Extjs学习笔记之一 初识Extjs之MessageBox
2010/01/07 Javascript
node爬取微博的数据的简单封装库nodeweibo使用指南
2015/01/02 Javascript
Javascript基础教程之break和continue语句
2015/01/18 Javascript
使用Angular和Nodejs、socket.io搭建聊天室及多人聊天室
2015/08/21 NodeJs
javacript获取当前屏幕大小
2016/06/04 Javascript
ionic组件ion-tabs选项卡切换效果实例
2016/08/27 Javascript
JS实现图片预加载之无序预加载功能代码
2017/05/12 Javascript
使用vue 国际化i18n 实现多实现语言切换功能
2018/10/11 Javascript
vue如何限制只能输入正负数及小数
2019/07/04 Javascript
JS开发 富文本编辑器TinyMCE详解
2019/07/19 Javascript
nest.js 使用express需要提供多个静态目录的操作方法
2019/10/24 Javascript
vue 使用插槽分发内容操作示例【单个插槽、具名插槽、作用域插槽】
2020/03/06 Javascript
JavaScript如何使用插值实现图像渐变
2020/06/28 Javascript
python和pyqt实现360的CLable控件
2014/02/21 Python
python dict.get()和dict['key']的区别详解
2016/06/30 Python
Python设置默认编码为utf8的方法
2016/07/01 Python
Odoo中如何生成唯一不重复的序列号详解
2018/02/10 Python
python自动查询12306余票并发送邮箱提醒脚本
2018/05/21 Python
对Tensorflow中的矩阵运算函数详解
2018/07/27 Python
python深copy和浅copy区别对比解析
2019/12/26 Python
python global和nonlocal用法解析
2020/02/03 Python
五分钟学会HTML5的WebSocket协议
2019/11/22 HTML / CSS
英国景点门票网站:attractiontix
2019/08/27 全球购物
俄罗斯EPL钻石珠宝店:ЭПЛ
2019/10/22 全球购物
法人授权委托书
2014/04/03 职场文书
学生会自荐信
2019/05/16 职场文书
CocosCreator入门教程之网络通信
2021/04/16 Javascript
使用CSS自定义属性实现骨架屏效果
2022/06/21 HTML / CSS