Redis - 使用 predis 检查键是否存在

Redis - Check if key exists using predis

使用predis是否可以检查密钥是否存在?

我的users数据存储如下:

public function createUser($email, $password, $username)
{
    return $this->predis->hMset("user:{$username}", [
        'email' => $email,
        'password' => $password,
        'username' => $username
    ]);
}

现在,当我检查用户是否存在时,我会执行以下操作:

public function checkUserExists($username)
{
    return $this->predis->hExists("user:{$username}", 'username');
}

是否可以在不检查密钥是否存在的情况下检查用户是否存在?例如,只需检查 user:{$username}?

是的。由于您的密钥本质上只是用户名,因此您可以只查看该密钥是否存在。您可以为此使用 Redis 的 EXISTS

public function checkUserExists($username)
{
    return $this->predis->exists("user:{$username}");
}

两者之间的速度差异会非常非常小,但是使用exists会让你的代码更干净一些。