当前位置:嗨网首页>书籍在线阅读

05-简便用法

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

5.1.3 简便用法

为了使开发更方便,Predis为许多命令额外提供了简便用法,这里选择几个典型的用法依次介绍。

1. MGET/MSET

Predis调用 MSET 命令时支持将PHP的关联数组直接作为参数,就像这样:

$userName = array(
  'user:1:name' => 'Tom',
  'user:2:name' => 'Jack'
);
// 相当于 $redis->mset('user:1:name', 'Tom', 'user:2:name', 'Jack');
$redis->mset($userName);

同样 MGET 命令支持一个数组作为参数:

$users = array_keys($userName);
print_r($redis->mget($users));

打印的结果为:

Array
(
  [0] => Tom
  [1] => Jack
)

2. HMSET/HMGET/HGETALL

Predis调用 HMSET 的方式和 MSET 类似,如:

$user1 = array(
  'name' => 'Tom',
  'age'  => '32'
);
$redis->hmset('user:1', $user1);

HMGETMGET 类似,不再赘述。最方便的是 HGETALL 命令,Predis会将Redis返回的结果组装成关联数组返回:

$user = $redis->hgetall('user:1');
echo $user['name']; // 'Tom'

3. LPUSH/SADD/ZADD

LPUSHSADD 的调用方式类似:

$items = array('a', 'b');
// 相当于$redis->lpush('list', 'a', 'b');
$redis->lpush('list', $items);
// 相当于$redis->sadd('set', 'a', 'b');
$redis->sadd('set', $items);

ZADD 的调用方式为:

$itemScore = array(
  'Tom'  => '100',
  'Jack' => '89'
);
// 相当于$redis->zadd('zset', '100', 'Tom', '89', 'Jack');
$redis->zadd('zset', $itemScore);

4. SORT

在Predis中调用 SORT 命令的方式和其他命令不同,必须将 SORT 命令中除键名外的其他参数作为关联数组传入到函数中。如对 SORT mylist BY weight_* LIMIT 0 10 GET value_* GET # ASC ALPHA STORE result 这条命令而言,使用Predis的调用方法如下:

$redis->sort('mylist', array(
  'by'  => 'weight_*',
  'limit' => array(0, 10),
  'get'   => array('value_*', '#'),
  'sort'  => 'asc',
  'alpha' => true,
  'store' => 'result'
));