Php yii中的验证规则
以下是验证规则Php yii中的验证规则,php,validation,yii,Php,Validation,Yii,以下是验证规则 public function rules() { return array( // username and password are required array('oldPassword', 'required'), array('oldPassword', 'authenticate'), .... ); } pu
public function rules()
{
return array(
// username and password are required
array('oldPassword', 'required'),
array('oldPassword', 'authenticate'),
....
);
}
public function authenticate($attribute,$params)
{
$this->userModel=User::model()->findByPk(Yii::app()->user->id);
if($this->userModel!=null){
if(!$this->userModel->validatePassword($this->oldPassword))
$this->addError($attribute, "Incorrect current password");
}
}
一切正常,但问题就在这里。。。当我将oldPassword保留为空时,将显示“必需”和“身份验证”的验证错误,而我希望显示第一个密码的错误消息,如果不为空,则显示后一个密码。在
身份验证()中添加一个条件,以仅在oldPassword
不为空时进行验证:
public function authenticate($attribute, $params) {
if ($this->oldPassword) {
...
}
}