Zend表单添加错误消息

Can*_*ğan 2 php forms zend-framework

我用zend表格注册了表格

$password = new Zend_Form_Element_Password('password');
$password->setLabel($this->_translate->_("Password:"))
    ->setRequired(true)
    ->addValidator('stringLength', true, array(4, 32));

$confirmPassword = new Zend_Form_Element_Password('confirmpassword');
$confirmPassword->setLabel($this->_translate->_("Confirm Password:"))
                        ->setRequired(true);
Run Code Online (Sandbox Code Playgroud)

我在控制器中控制密码和确认密码.如果密码和确认密码不匹配,请在confirmmpassword文本框下添加错误消息.我怎样做?

小智 5

在表单中覆盖isValid

/**
     * Validate the form, check passwords.
     *
     * @param  array $data
     * @return boolean
     */
    public function isValid($data) {
        $valid = parent::isValid($data);
        if ($this->getValue('password') !== $this->getValue('password2')) {
            $valid = false;
            $this->password2->addError('Passwords don\'t match.');
        }

        return $valid;
    }
Run Code Online (Sandbox Code Playgroud)