yii2.0-rules 검증 규칙 응용 실례
required: 속성 | | CrequiredValidator의 별명을 검증해야 합니다. 기능이 비어 있지 않습니다.
[[' 1',' 2'],required] // 1 2
[[' '],required,'requiredValue'=>' ','message'=>' '];
이메일: 메일박스 검증 | | | CEmailValidator의 별명으로 특성의 값이 유효한 전자 우편 주소임을 확보합니다.
['email', 'email'];
match: 정규 검증 | | Cregular Expression Validator의 별명으로 정규 표현식이 일치하는지 확인합니다.
[[' '],'match','pattern'=>' ','message'=>' '];
[[' '],'match','not'=>ture,'pattern'=>' ','message'=>' ']; /* */
url: 사이트 주소 | | | CUrlValidator의 별명으로 기능이 유효한 경로임을 확보합니다.
['website', 'url', 'defaultScheme' => 'http'];
captcha | | CCaptchaValidator의 별명으로 특성의 값이 CAPTCHA가 표시한 인증 코드와 같음을 확보합니다.
['verificationCode', 'captcha'];
안전
['description', 'safe'];
compare: (비교) CCompareValidator의 별명으로 특성의 값이 다른 특성이나 상수와 같음을 확보합니다.
['repassword', 'compare', 'compareAttribute' => 'password','message'=>' !'],
//compareValue: operator:
['age', 'compare', 'compareValue' => 30, 'operator' => '>='];
default: 기본값 | |CDefaultValueValidator의 별명으로 특성에 기본값을 할당했습니다.
['age', 'default', 'value' => null];
exist: ||CExistValidator의 별명이 존재하며, 속성 값이 지정한 데이터 테이블 필드에 있는지 확인합니다.
[' ', 'exist'];
file: 파일 |||CFileValidator의 별명으로 업로드 파일의 이름이 포함되어 있는지 확인합니다.
['primaryImage', 'file', 'extensions' => ['png', 'jpg', 'gif'], 'maxSize' => 1024*1024*1024]
filter: 필터|||CFilterValidator의 별명입니다. 필터를 사용하여 속성을 변환합니다.
//'skipOnArray' => true
[['username', 'email'], 'filter', 'filter' => 'trim', 'skipOnArray' => true];
in: 범위 | ||CrangeValidator의 별명으로 가입한 값 목록에 특성이 있는지 확인합니다.
['level', 'in', 'range' => [1, 2, 3]];
unique: 유일성 | | CUniqueValidator의 별명으로 데이터 테이블 필드에서 유일한 특성을 확보합니다.
[' ', 'unique']
integer: 정수
['age', 'integer'];
숫자
['salary', 'number'];
더블: 이중 정밀도 부동점형
['salary', 'double'];
date: (날짜)
[['from', 'to'], 'date'];
string:문자열
['username', 'string', 'length' => [4, 24]];
boolean: 부울 값 | | CBooleanValidator의 별명인지 여부
[' ', 'boolean', 'trueValue' => true, 'falseValue' => false, 'strict' => true];
image: 유효한 그림 파일인지 여부
['primaryImage', 'image', 'extensions' => 'png, jpg', 'minWidth' => 100, 'maxWidth' => 1000, 'minHeight' => 100, 'maxHeight' => 1000]
each: 반복,ids와product_ids는 숫자의 집합입니다.
[['ids', 'product_ids'], 'each', 'rule' => ['integer']],
사용자 정의 rules:
['password', 'validatePassword'],
/**
* Validates the password.
* This method serves as the inline validation for password.
*
* @param string $attribute the attribute currently being validated
* @param array $params the additional name-value pairs given in the rule
*/
public function validatePassword($attribute, $params)
{
if (!$this->hasErrors()) {
$user = $this->getUser();
if (!$user || !$user->validatePassword($this->password)) {
$this->addError($attribute, ' !');
}
}
}
소스 주소:http://www.yii-china.com/post/detail/9.html
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.