我有这个函数:
public function showProfile($id)
{
// Check if user already in redis with cache key user.1 for example
if (!Redis::exists('user.' . $id)) {
// If the user is not in redis, fetch it from DB and add it in redis for 60 seconds before returning it
$user = User::findOrFail($id);
Redis::set('user.' . $user->id, $user);
return $user;
} else {
// If user is in redis, just return it without querying the database
return Redis::get('user'.$id);// How to set this?
}
在此处输入图像描述
但是函数返回为null,为什么请。。。
看起来您的键不同。您正在设置user.id
:
Redis::set('user.' . $user->id, $user);
而您正试图获得userid
:
return Redis::get('user'.$id);
此方法适用于我的
use IlluminateSupportFacadesRedis;
$redisData = Redis::lrange("REDIS_KEY", 0, -1);
dd($redisData);