内置规则
最后更新于:2022-04-02 02:22:09
[TOC]
## 内置规则
### 格式验证类
```
require
number 或者 integer
float
boolean
email
array
accepted 判断 yes, on, 或是 1,在服务条款中有用
date 对字符串进行 strtotime
alpha 判断是否为字母
alphaNum 判断是否为数字
alphaDash 是否为字母和数字,下划线_及破折号-
chs 只能是汉字
chsAlpha 只能是汉字字母
chsAlphaNum 汉字字母数字
chsDash 汉字字母数字下划线和破折号
activeUrl 有效域名或ip
url 是否为有效url
ip
dateFormat:format 是否为制定日期格式 `'create_time'=>'dateFormat:y-m-d'`
```
### 长度和区间验证类
```
in:1,2,3 是否在某个范围
notIn:1,2,3
between:1,10
notBetween:1,10
length:4,25 或 length:4 长度范围,或某个长度
max:25 最大长度
min:5
after:2016-3-18 某个日期之后
before:2016-10-01 某个日期之前
expire:2016-2-1,2016-10-01 有效期内
allowIp:114.45.4.55 允许ip
denyIp:114.45.4.55 禁用ip
```
### 字段比较类
```
require|confirm:password 与password 是否相同
require|different:account 是否和另外一个字段的值不一致
eq:100 或 =:100 或 same:100
egt:60 或 >=:100
elt:100 或 <=:100
lt:100 或 <:100
lt:market_price 或 <:market_price 对字段比较
```
### 正则验证
```
'zip'=>'\d{6}' 或 'zip'=>'regex:\d{6}',
```
预定义正则
```
protected $regex = [ 'zip' => '\d{6}'];
'zip' => 'regex:zip',
```
## 其它验证
### unique
```
// 表示验证name字段的值是否在user表(不包含前缀)中唯一
'name' => 'unique:user',
// 验证其他字段
'name' => 'unique:user,account',
// 排除某个主键值
'name' => 'unique:user,account,10',
// 指定某个主键值排除
'name' => 'unique:user,account,10,user_id',
```
';