Browse Source

独立验证器放在rules中用

master
kuangweijian 3 years ago
parent
commit
92c944981f
  1. 25
      examples/my-validator.php
  2. 2
      src/UserInput.php

25
examples/my-validator.php

@ -1,25 +0,0 @@
<?php
namespace Wiggins\MyProject\Example;
require __DIR__.'/../vendor/autoload.php';
require __DIR__.'/../vendor/yiisoft/yii2/Yii.php';
use Wiggins\MyProject\UserInput;
use Wiggins\MyProject\MyValidator;
//创造一个模型对象
$model=new UserInput(['scenario'=>'login']);
$inputDate=[
"name" => "kuangweijian",
"password" => "123456546",
];
$model->setAttributes($inputDate);
//使用独立验证器
$validator = new MyValidator();
if($validator->validateAttribute($model, "name")){
echo "login succ".PHP_EOL;
}else{
echo "login failed".PHP_EOL;
print_r($model->getErrors());
}
?>

2
src/UserInput.php

@ -3,6 +3,7 @@
use yii\base\Model; use yii\base\Model;
use yii\validators\Validator; use yii\validators\Validator;
use Wiggins\MyProject\MyValidator;
/** /**
* UserInput类是用于用户登录或注册场景中输入数据 * UserInput类是用于用户登录或注册场景中输入数据
@ -69,6 +70,7 @@
['pwdConfirm','compare','compareAttribute'=>'password','message'=>'两次密码必须一致'], ['pwdConfirm','compare','compareAttribute'=>'password','message'=>'两次密码必须一致'],
[['name','email','password','pwdConfirm'],'required','on'=>'register'], [['name','email','password','pwdConfirm'],'required','on'=>'register'],
[['name','password'],'required','on'=>'login'], [['name','password'],'required','on'=>'login'],
[['name'],'Wiggins\MyProject\MyValidator'],
]; ];
} }
} }

Loading…
Cancel
Save