Validation 用于Yii的MD5验证程序

Validation 用于Yii的MD5验证程序,validation,yii,md5,Validation,Yii,Md5,Yii 1.x的最新版本。但是,我们是否有内置的MD5验证程序,以便我可以检查特定字段是否真的包含有效的MD5哈希 如果没有,如果我需要自己写,有没有可以重复使用的例子来源(不要再发明轮子)?或者我必须完全从头开始编写吗?这是一个验证程序代码示例: public function validateMd5($attribute, $params) { if(!$this->hasErrors() && $this->password !== '') {

Yii 1.x的最新版本。但是,我们是否有内置的MD5验证程序,以便我可以检查特定字段是否真的包含有效的MD5哈希


如果没有,如果我需要自己写,有没有可以重复使用的例子来源(不要再发明轮子)?或者我必须完全从头开始编写吗?

这是一个验证程序代码示例:

public function validateMd5($attribute, $params)
{
    if(!$this->hasErrors() && $this->password !== '')
    {
        if(!preg_match('/^[a-f0-9]{32}$/', $this->password))
            $this->addError('password', 'Password field must contain valid MD5 hash!');
    }
}
这就是如何将其添加到模型中(在
rules()
method中):

如果用户输入到
password
字段的字符串是有效的MD5哈希,则此代码仅进行验证。它不会验证密码本身。为此,您应该考虑例如 CaseWordHelp::ValuyPosith方法(例如
).

完美答案,谢谢!我只是让自己重新编辑您的代码,使之成为功能齐全的Yii验证器,而不仅仅是验证功能——如您所建议的。除了这个小小的编辑,所有的荣耀当然都属于你!:]
verifyPassword
使用一些匹配的系统,将在某个时候进行检查。干得好。
array('password', 'validateMd5', 'on'=>array('create', 'update'))