系統內置了一些常用的驗證規則,可以完成大部分場景的驗證需求:
> 驗證規則嚴格區分大小寫
## 格式驗證類
>[info]### require
驗證某個字段必須,例如:
~~~
'name':'require'
~~~
>[danger]如果驗證規則沒有添加`require`就表示沒有值的話不進行驗證
>[info]### number
驗證某個字段的值是否為純數字字符串,例如:
~~~
'num':'number'
~~~
>[info] ### mail
驗證某個字段的值是否為mail地址,例如:
~~~
'mail':'mail'
~~~
>[info] ### array
驗證某個字段的值是否為數組,例如:
~~~
'info':'array'
~~~
>[info] ### chs
驗證某個字段的值只能是漢字,例如:
~~~
'name':'chs'
~~~
>[info] ### chsAlpha
驗證某個字段的值只能是漢字、字母,例如:
~~~
'name':'chsAlpha'
~~~
>[info] ### chsAlphaNum
驗證某個字段的值只能是漢字、字母和數字,例如:
~~~
'name':'chsAlphaNum'
~~~
>[info] ### alphaNum
驗證某個字段的值是否為字母和數字,下劃線`_`及破折號`-`,例如:
~~~
'name':'alphaNum'
~~~
>[info] ### chsDash
驗證某個字段的值只能是漢字、字母、數字和下劃線\_及破折號-,例如:
~~~
'name':'chsDash'
~~~
>[info] ### mobile
驗證某個字段的值是否為有效的手機,例如:
~~~
'mobile':'mobile'
~~~
>[info] ### idCard
驗證某個字段的值是否為有效的身份證格式,例如:
~~~
'id_card':'idCard'
~~~
## 長度和區間驗證類
>[info] ### in
驗證某個字段的值是否在某個范圍
~~~
'num':'in:1,2,3',
~~~
>[info] ### notIn
驗證某個字段的值不在某個范圍
~~~
'num':'notIn:1,2,3',
~~~
>[info] ### between
驗證某個字段的值是否在某個區間,例如:
~~~
'num':'between:1,10'
~~~
>[info] ### notBetween
驗證某個字段的值不在某個范圍,例如:
~~~
'num'=>'notBetween:1,10'
~~~
>[info] ### length:num1,num2
驗證某個字段的值的長度是否在某個范圍,例如:
~~~
'name'=>'length:4,25'
~~~
或者指定長度
~~~
'name'=>'length:4'
~~~
>[info] 如果驗證的數據是數組,則判斷數組的長度。
> 如果驗證的數據是數值,則把數值轉為字符串進行判斷
>[info] ### max:number
驗證某個字段的值的最大長度,例如:
~~~
'name'=>'max:25'
~~~
>[info] 如果驗證的數據是數組/對象,則判斷數組的長度。
> 如果驗證的數據是字符串,則判斷文本長度
> 如果驗證的數據為數值,則判斷數值大小
>[info] ### min:number
驗證某個字段的值的最小長度,例如:
~~~
'name'=>'min:5'
~~~
>[info]如果驗證的數據是數組/對象,則判斷數組的長度。
> 如果驗證的數據是字符串,則判斷文本長度
> 如果驗證的數據為數值,則判斷數值大小
>[info]creaditCode
判斷是否為有效的統一社會信用代碼
~~~
'name'=>'creaditCode'
~~~
>[info]integer
通過正則方式來判斷是否為有效的整數
~~~
'name'=>'integer'
~~~
>[info]decimal
通過正則方式來判斷是否為有效的小數
~~~
'name'=>'decimal'
~~~
>[info]file
判斷是否為有效的文件對象
~~~
'name'=>'file'
~~~
>[info]ipV4
判斷是否IpV4
~~~
'name'=>'ipV4'
~~~
>[info] string
判斷是否字符串類型
~~~
'name'=>'string'
~~~
>[info] url
判斷是否為合法Url
~~~
'name'=>'url'
~~~
>[info] lower
判斷字段是否為小寫字母
~~~
'name'=>'lower'
~~~
>[info] upper
判斷字段是否為大寫字母
~~~
'name'=>'upper'
~~~
>[info] alpha
判斷字段是否為純字母
~~~
'name'=>'alpha'
~~~
>[info] amount
判斷字段是否為金額格式,最多保留兩位小數點
~~~
'name'=>'amount'
~~~