【发布时间】:2013-02-02 21:36:33
【问题描述】:
我是 Yii 框架的新手,所以我试图了解它的工作方式。 对于创建表单的用户,我有以下验证规则,现在我需要检查 afterValidation() 方法,如果所有验证规则都通过了用户密码的哈希值。我不知道的是,Yii 是否有一个内置方法,如果验证规则是否通过,则返回 true 或 false。
public function rules()
{
// NOTE: you should only define rules for those attributes that
// will receive user inputs.
return array(
array('email, password, username', 'required'),
array('email, username, password', 'length', 'max'=>256),
array('email, username', 'unique'),
array('password', 'compare'),
array('password_repeat', 'safe'),
);
}
protected function afterValidate()
{
parent::afterValidate();
if("VALIDATION RULES HAVE PASSED, ther is no error message")
{
$this->password = $this->encrypt($this->password);
}
}
public function encrypt($value)
{
return md5($value);
}
【问题讨论】:
-
您检查过文档吗?还是谷歌?真的很容易找到。
-
如果我在这里问我的问题,这意味着我已经检查了文档,不仅我还检查了谷歌!聪明的
-
因为
$model->validate()太难找了,right? 一点点努力就能走很长的路。 -
诡计我已经尝试过,但是当我调用该函数时,我收到此错误:致命错误:达到“100”的最大函数嵌套级别,正在中止!在第 559 行的 C:\php\Yii\framework\web\auth\CWebUser.php 也许我没有以正确的方式使用 $model->validate(),任何想法
标签: php yii yii-events