2014-02-13 92 views

回答

5

Predis支持可变参数Redis命令传递多个密钥(或多个密钥与值)的两种方式。第一种基本上遵循由Redis documentation所限定,因此,使用HMSETHMGET作为例子,你将有命令的相同的签名:

$redis->hmset("hash", "field:1", "value:1", "field:2", "value:2"); 
$values = $redis->hmget("hash", "field:1", "field:2"); 

但也可以通过键和/或值的列表中作为一个单一的数组参数:

$redis->hmset("hash", array("field:1" => "value:1", "field:2" => "value:2")); 
$values = $redis->hmget("hash", array("field:1", "field:2")); 

选择使用哪一个实际上只是一个偏好问题。

+0

对不起,@ nrk只有第二种方法适用于我。文档https://github.com/phpredis/phpredis#hmget表明它是一个数组。第一种方法返回false。它是否依赖于特定的版本? –

+0

@SanathBallal phpredis不是Predis,这个问题(和我的答案)与后者有关。 – nrk

+0

没错。谢谢@ nrk –

0

从Predis库

$redis->hmset('metavars', 'foo', 'bar', 'hoge', 'piyo', 'lol', 'wut'); 

$redis->hmget('metavars', 'foo', 'hoge', 'unknown')); 
+1

这是不好的投票下来的问题。当你不是100%确定并且只是想澄清1%的不确定性时有什么问题 –

相关问题