1. 验证规则,提供了大量实用封装好的规则,我们只需要进行调用即可;
2. 基础课程中,我们使用了 required、min 和 max 这三种比较简单的;
3. 下面,我们挑出比较典型常用的,演示一遍,具体大全网址如下:
https://learnku.com/docs/laravel/7.x/validation/7467#available-validation-rules
PS:约 66 个;
(1) .alpha_dash:字段必须由字母、数字破折号(-)和下划线(_)构成; 'username ' => 'required|alpha_dash ',
(2) .between:字段长度必须在指定的区间之间; 'username ' => 'required|between:2,6',
(3) .size:6:字段长度固定在某个值; 'username ' => 'required|size:6',
(4) .email:字段必须符合 email 格式; 'username ' => 'required|email ',
(5) .unique:users:字段值是唯一的,通过指定数据表字段检查; 'username ' => 'required|unique:users ',
(6) .confiremed:这个基本用于密码和密码确认,固定了字段名称; 'password ' => 'required|min:6 |confirmed ',
<input type="password" name="password_confirmation">
(7) different:password:字段和另一个字段不可以相同的验证; 'username ' => 'required|different:password ',
(8) .ip/json:字段是否是 ip 地址/字段是否是 json 数据; 'username ' => 'required|ip ',
'username ' => 'required|json ',
二.其它用法
1. 验证方法还提供了 Rule 类提供更加流程的验证构造,比如 in、not_in;
'username ' => 'required|in:tom,jack,lusy ',
'username '
=> [
'required ',
Rule ::in([ 'tom ', 'jack ', 'lusy '])
],
//如果只验证一个规则,不需要数组,如果规则名有下划线,首字母大写
'username ' => Rule ::notIn([ 'tom ', 'jack ', 'lusy ']),
2. Rule 类还可以结合 where 来限制验证范围等操作;
//验证是否重复
'username ' => Rule ::unique( 'users '),
'username ' => Rule ::unique( 'users ')->where(function ($query) {
$query->where( 'id ', 20);
}),