public function get($keys)
{
if (!$keys) {
return [];
}
$keyValue = array_combine($keys, $this->redis->mget($keys));
array_walk($keyValue, function (&$item) {
$item = json_decode($item);
});
$keyValue = array_filter($keyValue, function ($value) {
return !is_null($value);
});
return $keyValue;
}
public function testGet() { $redis = M::mock(Redis::class); $redis->shouldReceive('mget')->with(['a', 'b', 'c'])->andReturn([1, "null", '[]']); $cache = new RedisCache($redis); $result = $cache->get(['a', 'b', 'c']); $this->assertEquals(['a' => 1, 'c' => []], $result); }