ValidatePassword中的Yii2异常()

时间:2014-09-18 10:33:17

标签: php yii2

我使用yii2开发网站 在将用户保存到db之前,我输入了这样的密码:

$this->password = Yii::$app->security->generatePasswordHash($this->password);

当我使用此代码时:

Yii::$app->security->validatePassword("some string", $this->password);

我有错误:

  

无效参数 - yii \ base \ InvalidParamException   哈希无效。

有什么问题?

2 个答案:

答案 0 :(得分:4)

我遇到了同样的问题。我意识到我的密码字段的字符容量对于哈希来说太短了,所以我把它从varchar(25)提升到了varchar(255)。

答案 1 :(得分:0)

确保您在用户表中具有与password_hash完全相同的列名,并从

更改您的代码

Yii :: $ app-> security-> validatePassword(" some string",$ this-> password);

为:

Yii :: $ app-> security-> validatePassword("某些字符串",$ this-> password_hash);