国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Yii CModel中rules驗證規則[轉]

2019-11-15 01:44:58
字體:
來源:轉載
供稿:網友
Yii CModel中rules驗證規則[轉]

array(array(‘username’, ‘required’), array(‘username’, ‘length’, ‘min’=>3, ‘max’=>12), array(‘passWord’, ‘compare’, ‘compareAttribute’=>’password2&PRime;, ‘on’=>’register’), array(‘password’, ‘authenticate’, ‘on’=>’login’),  array(‘Price’,’numerical’, ‘integerOnly’=>true),);public function rules(){  return array(      array(‘title, content, status’, ‘required’),      array(‘title’, ‘length’, ‘max’=>128),      array(‘status’, ‘in’, ‘range’=>array(1,2,3)),      array(‘tags’, ‘match’, ‘pattern’=>’/^[/w/s,]+$/’,          ‘message’=>’Tags can only contain word characters.’),      array(‘tags’, ‘normalizeTags’),      array(‘title, status’, ‘safe’, ‘on’=>’search’),  );}

預定義完整列表:
  • boolean:CBooleanValidator的別名, 確保屬性的值是CBooleanValidator::trueValue或CBooleanValidator::falseValue.

  • captcha:CCaptchaValidator的別名,確保了特性的值等于CAPTCHA顯示出來的驗證碼.

  • compare:CCompareValidator的別名, 確保了特性的值等于另一個特性或常量.

  • email:CEmailValidator的別名,確保了特性的值是一個有效的電郵地址.

  • default:CDefaultValueValidator的別名, 為特性指派了一個默認值.

  • exist:CExistValidator的別名, 確保屬性值存在于指定的數據表字段中.

  • file:CFileValidator的別名, 確保了特性包含了一個上傳文件的名稱.

  • filter:CFilterValidator的別名, 使用一個filter轉換屬性.

  • in:CRangeValidator的別名, 確保了特性出現在一個預訂的值列表里.

  • length:CStringValidator的別名, 確保了特性的長度在指定的范圍內.

  • match:CRegularExpressionValidator的別名, 確保了特性匹配一個正則表達式.

  • numerical:CNumberValidator的別名, 確保了特性是一個有效的數字.

  • required:CRequiredValidator的別名, 確保了特性不為空.

  • type:CTypeValidator的別名, 確保了特性為指定的數據類型.

  • unique:CUniqueValidator的別名, 確保了特性在數據表字段中是唯一的.

  • url:CUrlValidator的別名, 確保了特性是一個有效的路徑

yii驗證rulesit分類:Yiiyii的rules驗證cValidator主要屬性attributes,builtInValidators,enableClientValidation,message,on,safe,skipOnError

經常用到的屬性有attributes,builtInvalidators,message,on這四個

下面是對應的驗證類

required:CRequiredValidator

filter:CFilterValidator

match:CRegularExpressionValidator

email:CEmailValidator

url:CUrlValidator

unique:CUniqueValidator

compare:CCompareValidator

length:CStringValidator

in:CRangeValidator

numerical:CNumberValidator

captcha:CCaptchaValidator

type:CTypeValidator

file:CFileValidator

default:CDefaultValueValidator

exist:CExistValidator

boolean:CBooleanValidator

date:CDateValidator

safe:CSafeValidator

unsafe:CUnsafeValidator

1、CRequiredValidator–必須值驗證屬性

requiredValue-mixed-所需的值

strict-boolean-是否比較嚴格

實例:array(‘username’,‘required’),不能為空

array(‘username’,‘required’,‘requiredValue’=>’lh’,’message’=>‘usernmaemustbelh’),這個值必須為lh,如果填其他值還是會驗證不過

array(‘username’,‘required’,‘requiredValue’=>’lh’,‘strict’=>true),嚴格驗證還可以在后面加‘message’=>”,’on’=>這些

2、CFilterValidator過濾驗證屬性

filter–方法名(調用用戶自己定義的函數)

實例:

array(‘username’,‘test’)functiontest(){$username=$this->username;if($username!=‘lh’){$this->addError(‘username’,‘usernamemustbelh’);}}

使用這個方法如果你還在array里面寫message=>”,給出的提示信息還是你的test里面的。也就是以test里面的錯誤信息為準

3、CRegularExpressionValidator-

正則驗證屬性allowEmpty–是否為空(默認true)

not-是否反轉的驗證邏輯(默認false)pattern–正則表達式匹配實例:

//匹配a-zarray(‘username’,‘match’,‘allowEmpty’=>true,‘pattern’=>’/[a-z]/i’,’message’=>’必須為字母’),

//匹配不是a-zarray(‘username’,‘match’,‘allowEmpty’=>true,‘not’=>true,‘pattern’=>’/[a-z]/i’,’message’=>’必須不是字母’),

4、CEmailValidator–郵箱驗證屬性:

allowEmpty–是否為空

allowName–是否允許在電子郵件地址的名稱

checkMx–是否檢查電子郵件地址的MX記錄

checkPort–是否要檢查端口25的電子郵件地址

fullPattern–正則表達式,用來驗證電子郵件地址與名稱的一部分

pattern–正則表達式,

用來驗證的屬性值實例:array(‘username’,‘email’,‘message’=>’必須為電子郵箱’,‘pattern’=>’/[a-z]/i’),

5、CUrlValidator–url驗證屬性:

allowEmpty–是否為空

defaultScheme–默認的URI方案

pattern–正則表達式

validSchemes–清單應視為有效的URI計劃。

實例:

array(‘username’,‘url’,‘message’=>’musturl’),

array(‘username’,‘url’,‘defaultScheme’=>’http://www.baidu.com’),

6、CUniqueValidator–唯一性驗證屬性:

allowEmpty–是否為空

attributeName–屬性名稱

caseSensitive–區分大小寫

className–類名

criteria–額外的查詢條件

實例:

array(‘username’,‘unique’,‘message’=>’該記錄存在’),

array(‘username’,‘unique’,‘caseSensitive’=>false,‘message’=>’該記錄存在’),

7、CCompareValidator–比較驗證屬性:

allowEmpty–是否為空

compareAttribute–需要比較的屬性

compareValue-比較的值

Operator–比較運算符

strict–嚴格驗證(值和類型都要相等)

實例://與某個值比較array(‘username’,‘compare’,‘compareValue’=>’10′,‘operator’=>’>’,‘message’=>’必須大于10′),

//與某個提交的屬性比較array(‘username’,‘compare’,‘compareAttribute’=& gt;’password’,‘operator’=>’>’,‘message’=>’必須大于password’),

8、CStringValidator–字符串驗證屬性:

allowEmpty–是否為空

encoding–編碼

is–確切的長度

max–最大長度

min–最小長度

tooLong–定義值太大的錯誤

tooShort–定義最小長度的錯誤

實例:array(‘username’,‘length’,‘max’=>10,‘min’=>5,‘tooLong’=>’太長了’,‘tooShort’=>’太短了’),

array(‘username’,‘length’,‘is’=>5,‘message’=>’長度必須為5′),

9、CRangeValidator–在某個范圍內屬性:

allowEmpty–是否為空

not–是否反轉的驗證邏輯。

range–array范圍

strict–嚴格驗證(類型和值都要一樣)

實例:array(‘username’,‘in’,‘range’=>array(1,2,3,4,5),‘message’=>’mustin12345′),

array(‘username’,‘in’,‘not’=>true,‘range’=>array(1,2,3,4,5),‘message’=>’mustnotin12345′),

10、CNumberValidator–數字驗證屬性:

allowEmpty–是否為空

integerOnly–整數

integerPattern–正則表達式匹配整數

max–最大值

min–最小值

numberPattern–匹配號碼

tooBig–值太大時的錯誤提示

tooSmall–值太小時的錯誤提示

實例:array(‘username’,‘numerical’,‘integerOnly’=>true,‘message’=>’mustbeint’),

array(‘username’,‘numerical’,‘integerOnly’=>true,‘message’=>’mustbeint’,‘max’=

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 腾冲县| 阿图什市| 井研县| 祁门县| 武邑县| 容城县| 固原市| 内江市| 博乐市| 张家口市| 大渡口区| 丽江市| 阿合奇县| 康保县| 西昌市| 财经| 北京市| 东阿县| 渭南市| 金寨县| 公安县| 延吉市| 奉新县| 鄂温| 隆安县| 霍城县| 尖扎县| 衡水市| 扬州市| 宁乡县| 西林县| 新源县| 常德市| 夏津县| 延吉市| 三门峡市| 宽甸| 新竹县| 无锡市| 翁牛特旗| 德清县|