本文整理汇总了PHP中Predis\Client::hmget方法的典型用法代码示例。如果您正苦于以下问题:PHP Client::hmget方法的具体用法?PHP Client::hmget怎么用?PHP Client::hmget使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Predis\Client
的用法示例。
在下文中一共展示了Client::hmget方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: find
/**
* {@inheritDoc}
*/
public function find(array $sources, $limit = 25, $offset = 0)
{
call_user_func_array([$this->redis, 'zunionstore'], array_merge([$key = sha1(microtime()), count($sources)], array_map(function ($source) {
return "aggregator:sources:{$source}";
}, $sources)));
$identifiers = $this->redis->zrevrange($key, $offset, $offset + $limit - 1);
$this->redis->del($key);
$items = $this->redis->hmget('aggregator:objects', $identifiers);
foreach ($items as &$item) {
$item = json_decode($item, true);
$item['timestamp'] = \DateTime::createFromFormat('U', $item['timestamp']);
}
return $items;
}
示例2: htGetMulti
/**
* 获取hash table指定的一些字段的信息
* @param $key
* @param array $fields
* @param bool $valToInt 将所有的值转成int,在将hash table做为计数器时有用
* @return array
*/
public function htGetMulti($key, array $fields, $valToInt = false)
{
$data = $this->redis->hmget($key, $fields);
if ($data && class_exists('\\Predis\\Client') && is_subclass_of($this->redis, '\\Predis\\ClientInterface')) {
$data = array_combine($fields, $data);
}
if ($valToInt) {
array_walk($data, function (&$val) {
$val = (int) $val;
});
}
return $data;
}
示例3: getSessionsByUserIds
/**
* @param array $userIds
* @return array
*/
public function getSessionsByUserIds(array $userIds) : array
{
return array_values($this->redis->hmget(RedisClientInterface::ID_SESSION_HASH, $userIds));
}