我有一个执行一些简单验证的用户类。我想使用 phpass 将所有密码存储为哈希值。但是,我不希望它是 User 类的工作来设置哈希,这是其他一些函数的工作。因此,如果我有一个名为 setPassword 的简单函数,我如何确保密码是哈希。is_binary 有效吗?我不是在这里比较哈希值,我只是想确保密码是哈希值..无论哪种类型的 md5..sha1...blah 都无关紧要。我只是想确保密码是哈希。
例子:
class User
{
private password = NULL;
private $errors = array();
public function setPassword($password)
{
// make sure password is a hash...pseudo code
if (!password_is_hash($password))
{
$this->errors[] = 'Invalid password';
return $this;
}
$this->password = $password;
return $this;
}
public function getPassword()
{
return $this->password;
}
}