我最近对Laravel有一个很奇怪的问题,当我在Redis中存储一些东西,然后获取键并尝试使用该键检索值时,我得到了null。但是,当我通过子字符串或类似的方式从键中手动删除前缀时,便能够检索数据。示例:
Redis::hmset('users:'.$db_user->id,$db_user->toArray());
然后我执行以下操作来检索存储的密钥:
foreach(Redis::redis->keys('users:*') as $key){
Redis::redis->hgetall($key); //returns null
Redis::hgetall(substr($key,18))); //returns the stored values
}
密钥将显示为:
redisser_database_users:78
在Laravel中给定前缀设置的情况应该是这样。现在,我想知道是否有此行为。如果是这样,那对我来说就没有太大意义。
可以通过某种方式解决此问题,这样我就可以直接使用键,而无需手动切断前缀吗?