Yii 2.0 rules 验证规则大全 [ 未指定版本 ]
required : 必须值验证属性
[['字段名'],required,'requiredValue'=>'必填值','message'=>'提示信息']; #说明:CRequiredValidator 的别名, 确保了特性不为空.
email : 邮箱验证
['email', 'email']; #说明:CEmailValidator的别名,确保了特性的值是一个有效的电邮地址.
match : 正则验证
[['字段名'],match,'pattern'=>'正则表达式','message'=>'提示信息'];
[['字段名'],match,'not'=>ture,'pattern'=>'正则表达式','message'=>'提示信息']; /*正则取反*/ #说明:CRegularExpressionValidator 的别名, 确保了特性匹配一个正则表达式.
url : 网址
['website', 'url', 'defaultScheme' => 'http']; #说明:CUrlValidator 的别名, 确保了特性是一个有效的路径.
captcha : 验证码
['verificationCode', 'captcha']; #说明:CCaptchaValidator 的别名,确保了特性的值等于 CAPTCHA 显示出来的验证码.
safe : 安全
['description', 'safe'];
compare : 比较
['age', 'compare', 'compareValue' => 30, 'operator' => '>=']; #说明:compareValue(比较常量值) - operator(比较操作符) #说明:CCompareValidator 的别名,确保了特性的值等于另一个特性或常量.
default : 默认值
['age', 'default', 'value' => null]; #说明:CDefaultValueValidator 的别名, 为特性指派了一个默认值.
exist : 存在
['username', 'exist']; #说明:CExistValidator 的别名,确保属性值存在于指定的数据表字段中.
file : 文件
['primaryImage', 'file', 'extensions' => ['png', 'jpg', 'gif'], 'maxSize' => 1024*1024*1024]; #说明:CFileValidator 的别名, 确保了特性包含了一个上传文件的名称.
filter : 滤镜
[['username', 'email'], 'filter', 'filter' => 'trim', 'skipOnArray' => true]; #说明:CFilterValidator 的别名, 使用一个filter转换属性.
in : 范围
['level', 'in', 'range' => [1, 2, 3]]; #说明:CRangeValidator 的别名,确保了特性出现在一个预订的值列表里.
unique : 唯一性
['username', 'unique'] #说明:CUniqueValidator 的别名,确保了特性在数据表字段中是唯一的.
integer : 整数
['age', 'integer'];
number : 数字
['salary', 'number'];
double : 双精度浮点型
['salary', 'double'];
date : 日期
[['from', 'to'], 'date'];
string : 字符串
['username', 'string', 'length' => [4, 24]];
boolean : 是否为一个布尔值
['字段名', 'boolean', 'trueValue' => true, 'falseValue' => false, 'strict' => true]; #说明:CBooleanValidator 的别名
lzrqyc110
注册时间:2016-01-02
最后登录:2018-12-28
在线时长:29小时34分
最后登录:2018-12-28
在线时长:29小时34分
- 粉丝37
- 金钱4195
- 威望40
- 积分4885
共 24 条评论
赞赞赞赞赞!!!!!!!!
哈哈,整合的一手好教程,支持支持。
11111111
支持,支持,支持!
不错,已收藏
已收藏,整理的挺好
怎么收藏啊
如果你是想加入浏览器书签的话,请按Ctrl+D,即可保存到书签,如果你只是想收藏到yiichina里面,翻到最上面,在这个文章的标题下面,在浏览次数,评论次数后面,有个5角星,这就是收藏的按钮
真棒!!!
补充一个
image :是否为有效的图片文件
['primaryImage','image', 'extensions' => 'png, jpg,jpeg','minWidth' => 100,'maxWidth' => 1000,'minHeight' =>100,'maxHeight' => 1000]
CRequiredValidator 的别名
Yii2中不带C这种,CRequiredValidator 这种都是Yii1的。
好东西 已收藏
被你坑了,正则验证规则match要加引号
哈哈,不好意思~多谢提醒!
正则表达式不对。。。。。晕了 了半天,最后发现,正则要加引号,而且表达式要有//包含起来。。。
例如:
[['sendmail_limit'],'match','pattern'=>'/^[1-9]d*|0$/','message'=>'必须为正整数'],
恩恩 多谢,这些验证规则我也没全用,可惜发不完后改不了了。。。
@lzrqyc110 没事,补充到评论里了,后面的同学应该可以看的到了。你整理的挺不错,我转放到我的博客中了。http://www.cnblogs.com/hsd1727728211/
@lzrqyc110 这个坑折腾他了半天
66666赞赞赞
补充date是需要格式限制的,默认的好像是
yyyy/mm/dd
?['birth_date', 'date','format' => 'yyyy-mm-dd']
不错,找的就是它
又是一篇可以写进教科书的文章
正则和不为空可以同事实现吗??
第一个不为空 requird 也要加引号
safe里的方法得自己写,都是空方法
有的用法可能有点问题,字段跟规则应该分开写 。字段站一个数组,规则单独拿出去。
想
['username', 'unique']
说明:
CUniqueValidator
的别名,确保了特性在数据表字段中是唯一的.应该这样
[['username',],'unique'];
验证username唯一,必填,长度是6-20怎么写
['username','unique'], ['username','string','min'=>6,'max' => 20],
基础版的给的demo中,关于登陆这块,有一个规则是一个函数的调用,没有包括