laravel自定义验证器实现

验证器的概述

什么是验证器?首先记住一点服务器不要相信客户端传来的数据都是合法的,我们把验证客户端传来数据的过程称之为验证器。他的好处就是就和他的字面意思一样,保证服务器接收的数据都是合法的。

自定义验证

开发人员实现自定义验证,其实就是改变验证的描述。因为laravel验证不通过的提示信息是英文的,对国人来说不是那么通俗易懂。还有一个场景就是laravel提供的验证描述不能说明我们想要描述,这个时候我们就要自定义。

第一步我们首先创建自定义验证器

由上图我们可以看到,验证失败就要调用fails()函数,启动验证是make方法,第一个参数是要验证的数据,第二个参数是验证的规则,第三个参数是验证失败信息的描述;

我们创建了两个保护的属性,一个是规则,一个是验证失败描述的信息;

注意:我们在验证不通过的时候,我在这抛出了异常,这个是我的做法,你还可以直接自定义返回给客户端数据格式。比如

第二步我们创建自定义的规则

 

我们定义验证的规则要重写Base属性。

 表单数据的验证

订单我们的数据格式如下

验证规则

总结:

1、我们不要相信客户端传来的数据都是合法的,我们一定要做数据的验证。

2、普通字段的验证就是常规的,字段加验证规则;

3、表单自定义验证就是看数据格式是几维数据,二维就是上面的,三维就是product.*.id类似这样。

猜你喜欢

转载自www.cnblogs.com/meichao/p/9166647.html