博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
yii2 rules 验证规则
阅读量:4617 次
发布时间:2019-06-09

本文共 3857 字,大约阅读时间需要 12 分钟。

yii2  框架定义的约束

public $builtInValidators = [    'boolean' => 'yii\validators\BooleanValidator',    'captcha' => 'yii\captcha\CaptchaValidator',    'compare' => 'yii\validators\CompareValidator',    'date' => 'yii\validators\DateValidator',    'default' => 'yii\validators\DefaultValueValidator',    'double' => 'yii\validators\NumberValidator',    'each' => 'yii\validators\EachValidator',    'email' => 'yii\validators\EmailValidator',    'exist' => 'yii\validators\ExistValidator',    'file' => 'yii\validators\FileValidator',    'filter' => 'yii\validators\FilterValidator',    'image' => 'yii\validators\ImageValidator',    'in' => 'yii\validators\RangeValidator',    'integer' => ['class' => 'yii\validators\NumberValidator', 'integerOnly' => true],    'match' => 'yii\validators\RegularExpressionValidator',    'number' => 'yii\validators\NumberValidator',    'required' => 'yii\validators\RequiredValidator',    'safe' => 'yii\validators\SafeValidator',    'string' => 'yii\validators\StringValidator',    'trim' => ['class' => 'yii\validators\FilterValidator', 'filter' => 'trim', 'skipOnArray' => true],    'unique' => 'yii\validators\UniqueValidator', 'url' => 'yii\validators\UrlValidator']

rules常用规则

return $extends= [                [                    ['buyer_id','linkman','phone_area','buyer_id','province','city','street','zcode','is_default','type'],                    'required','message'=>'{attribute} 不能为空','on'=>['add','edit']                ],                ['addr_id','required','message'=>'{attribute} 不能为空','on'=>'edit'],                [['province','city','linkman'],'match','pattern'=>'/^[\x{4e00}-\x{9fa5}]+$/u','message' => '{attribute}只能输入中文字符',],                [['zcode','is_default','type','phone_area','phone','zcode','phone_ext','mobile'],'match','pattern'=>'/^[0-9]+$/','message' => '{attribute} 必须为数字'],                ['street', 'string', 'max' => 30],                ['mobile', 'string', 'max' => 11,'min'=>11,'tooLong'=>'手机号格式为11位的数字'],                [['phone_ext','phone_area'], 'string', 'max' => 4],                [['phone'], 'string', 'max' => 10,'min'],                ['zcode','string','max'=>6,]            ];
return array(    //必须填写    array('email, username, password,agree,verifyPassword,verifyCode', 'required'),    //检查用户名是否重复    array('email','unique','message'=>'用户名已占用'),    //用户输入最大的字符限制    array('email, username', 'length', 'max'=>64),        //限制用户最小长度和最大长度    array('username', 'length', 'max'=>7, 'min'=>2, 'tooLong'=>'用户名请输入长度为4-14个字符', 'tooShort'=>'用户名请输入长度为2-7个字'),    //限制密码最小长度和最大长度    array('password', 'length', 'max'=>22, 'min'=>6, 'tooLong'=>'密码请输入长度为6-22位字符', 'tooShort'=>'密码请输入长度为6-22位字符'),    //判断用户输入的是否是邮件    array('email','email','message'=>'邮箱格式错误'),    //检查用户输入的密码是否是一样的    array('verifyPassword', 'compare', 'compareAttribute'=>'password', 'message'=>'请再输入确认密码'),    //检查用户是否同意协议条款    array('agree', 'required', 'requiredValue'=>true,'message'=>'请确认是否同意隐私权协议条款'),    //判断是否是日期格式    array('created', 'date', 'format'=>'yyyy/MM/dd/ HH:mm:ss'),    //判断是否包含输入的字符    array('superuser', 'in', 'range' => array(0, 1)),   //正则验证器:            array('name','match','pattern'=>'/^[a-z0-9\-_]+$/'),   //数字验证器:                   array('id', 'numerical', 'min'=>1, 'max'=>10, 'integerOnly'=>true),    //类型验证 integer,float,string,array,date,time,datetime                     array('created', 'type', 'datetime'),   //文件验证:            array('filename', 'file', 'allowEmpty'=>true, 'types'=>'zip, rar, xls, pdf, ppt','tooLarge'=>'图片不要超过800K'),    array('url',            'file',    //定义为file类型            'allowEmpty'=>true,             'types'=>'jpg,png,gif,doc,docx,pdf,xls,xlsx,zip,rar,ppt,pptx',   //上传文件的类型            'maxSize'=>1024*1024*10,    //上传大小限制,注意不是php.ini中的上传文件大小            'tooLarge'=>'文件大于10M,上传失败!请上传小于10M的文件!'           ),

 

转载于:https://www.cnblogs.com/zrcx/p/6884365.html

你可能感兴趣的文章
编写用例文档
查看>>
解决WPF两个图片控件显示相同图片因线程占用,其中一个显示不全的问题
查看>>
寻觅Azure上的Athena和BigQuery (二):神奇的PolyBase
查看>>
编程题练习
查看>>
mac os安装vim74
查看>>
Linux内存管理原理
查看>>
Java 8 Lambda 表达式
查看>>
BZOJ-3289 Mato的文件管理
查看>>
自旋锁和互斥锁的区别
查看>>
react混合开发APP,资源分享
查看>>
入门篇
查看>>
【洛谷1829】 [国家集训队] Crash的数字表格(重拾莫比乌斯反演)
查看>>
[转]免费api大全
查看>>
git 认证问题之一的解决 : http ssh 互换
查看>>
sql where 1=1作用
查看>>
搜索算法----二分查找
查看>>
Python语言编程
查看>>
[poj 1469]Courses
查看>>
vue+element-ui实现表格checkbox单选
查看>>
测试开发学习进阶教程 视频&PDF
查看>>