以zend形式验证

时间:2012-08-14 06:13:29

标签: php zend-framework zend-form

在Zend Form中使用更改密码时,我想检查旧密码和新密码。两者不应该相同.Zend Form中有任何选项可以检查两者。

提前致谢。

1 个答案:

答案 0 :(得分:1)

在My下创建一个库并使用以下内容:

class My_Validate_PasswordConfirmation extends Zend_Validate_Abstract
{
    const NOT_MATCH = 'notMatch';

    protected $_messageTemplates = array(
        self::NOT_MATCH => 'Password confirmation does not match'
    );

    public function isValid($value, $context = null)
    {
        $value = (string) $value;
        $this->_setValue($value);

        if (is_array($context)) {
            if (isset($context['password_confirm'])
                && ($value == $context['password_confirm']))
            {
                return true;
            }
        } elseif (is_string($context) && ($value == $context)) {
            return true;
        }

        $this->_error(self::NOT_MATCH);
        return false;
    }
}

More Information at the : Zend Manual 向下滚动或查找:

  

注意:验证上下文

在源页面上。代码在它下面给出,解释也是如此。

希望它有所帮助! :)