yii2 rules 验证规则
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,]];//copyreturn 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'),//copy
//判断是否包含输入的字符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的文件!'
),
public function rules(){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,datetimearray('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的文件!'),} );
yii2 rules 验证规则的更多相关文章
- Yii2 rules验证规则
Rules验证规则: required : 必须值验证属性||CRequiredValidator 的别名, 确保了特性不为空. [['字段名1','字段名2'],required] //字段 ...
- Yii2 rules验证规则大全
1.required : 必须值验证属性 [['字段名'],required,'requiredValue'=>'必填值','message'=>'提示信息']; #说明:CRequire ...
- yii2 rules验证规则,ajax验证手机号码是否唯一
<?php namespace frontend\models; use Yii; use yii\base\Model; /** * Signup form */ class SignupFo ...
- yii2.0-rules验证规则应用实例
Rules验证规则: required : 必须值验证属性||CRequiredValidator 的别名, 确保了特性不为空. [['字段名1','字段名2'],required] //字段 ...
- Yii CModel中rules验证规则[转]
array( array(‘username’, ‘required’), array(‘username’, ‘length’, ‘min’=>3, ‘max’=>12), array( ...
- Yii CModel中rules验证规则
array( array(‘username’, ‘required’), array(‘username’, ‘length’, ‘min’=>3, ‘max’=>12), array( ...
- Yii2.0 rules验证规则大全
required : 必须值验证属性 [['字段名'],required,'requiredValue'=>'必填值','message'=>'提示信息']; #说明:CRequiredV ...
- [moka同学收藏]Yii2.0 rules验证规则
required : 必须值验证属性 [['字段名'],required,'requiredValue'=>'必填值','message'=>'提示信息']; #说明:CRequiredV ...
- Yii2中rules验证规则
required : 必须值验证属性 [['字段名'],required,'requiredValue'=>'必填值','message'=>'提示信息']; #说明:CRequiredV ...
随机推荐
- leetcode 703数据流中的第K大元素
这里思路是堆排序,而且是小根堆.C++中包含在头文件<queue>的priority_queue本质就是堆排序实现的.其中priority_queue函数原型是 priority_queu ...
- 创建nodejs服务
1.终端窗口输入:npm init 2.终端输入:npm install 3.修改代码后重启服务:ctrl+c 启动服务:node 文件名.js
- react native练习
import React, { Component } from 'react' import { Platform, StyleSheet, Text, View,Image ,FlatList} ...
- Linux系统下apt-get命令无法安装常见软件包?
- explode() 字符串分割函数
说明 本函数返回由字符串组成的数组,其中的每个元素都是由 separator 作为边界点分割出来的子字符串. separator 参数不能是空字符串.如果 separator 为空字符串(" ...
- Python-接口自动化(八)
unittest单元测试框架(八) (九)unittest 1.基本概念 python自带的unittest单元测试框架不仅可以适用于单元测试,也适用于WEB自动化测试用例的开发与执行,uint ...
- flex布局-弹性布局
弹性布局当前应用的非常广泛,特别是移动端,记得第一次用reactNative 写代码的时候是最开始真正接触Flex布局.1.首先最外层的容器需要指定为display:flex;由于flex的兼容版本还 ...
- MAVEN项目环境搭建
一.Maven的环境配置 apache-maven-3.5.4 Maven下载地址:http://maven.apache.org/download.cgi 选择下载 直接解压无需安装()下面配置M ...
- Django框架教程之正则表达式URL误区详解
问题:我学习的视频大概是2015年录的,里面用的Django版本比较老关于正则表达式URL这一块都是用的url(“url(r'^admin/', admin.site.urls),”)方法.而我自己练 ...
- @Dependson注解与@ConditionalOnBean注解的区别
@Dependson注解是在另外一个实例创建之后才创建当前实例,也就是,最终两个实例都会创建,只是顺序不一样 @ConditionalOnBean注解是只有当另外一个实例存在时,才创建,否则不创建,也 ...
