验证

<?php
//app指的是网站的根目录
//命名空间指的是文件存放的位置
namespace app\controllers;
//yii指的是网站根目录下vendor\yiisoft\yii2
use yii\web\Controller;
use app\models\Yonghu;
use app\models\Test;
class TestController extends Controller {

public function actionValidate(){
$data = [
'Test'=>[
'username'=>'ybo',
'password'=>'123456',
'repassword'=>'123456',
'money'=>1.2,
'email'=>"2439953593@qq.com",
'sex'=>'男',
'zhengze'=>'ybo23',
'str'=>'111111666666'
]
];
$test = new \app\models\Test();
$test->load($data);
if(!$test->validate()){
print_r($test->getErrors());
}
// var_dump($test);
}
}

?>

<?php
namespace app\models;
use yii\base\Model;
class Test extends Model {
public $username;
public $password;
public $repassword;
public $money;
public $email;
public $sex;
public $zhengze;
public $str;
public function rules(){
return [
// [['username','password'],'safe']
['username','required','message'=>'用户名不能为空'],
['password','required','message'=>'密码不能为空'],
// ['password','compare','compareValue'=>'123456','message'=>'不等于123456']
['password','compare','compareAttribute'=>'repassword','message'=>'两次密码不一致'],
['repassword','safe'],
['money','double','min'=>1.0,'max'=>2.0,'tooSmall'=>'小于最小值','tooBig'=>'大于最大值','message'=>'不是数字'],
['email','email','message'=>'邮箱格式不正确'],
['sex','in','range'=>['男','女'],'message'=>'不在选择范围中'],
['zhengze','match','pattern'=>'/^ybo\d{2,}$/','message'=>'不符合正则规则'],
['str','string','min'=>10,'max'=>20,'tooShort'=>'不能少于10位','tooLong'=>'不能大于10位','message'=>'不是一个字符串'],
['username','usernamefunction','params'=>['message'=>'不等于ybo']]
];
}
public function usernamefunction ($attribute,$params){ if($this->$attribute != 'ybo'){ $this->addError($attribute,$params['message']); } }}?>
 
posted @ 2016-05-16 01:08  土亢  阅读(347)  评论(0编辑  收藏  举报