可以預測使用數組作爲hmget()的第二個參數一次檢索多個字段?例如 $ client-> hmget($ key,$ fields); // $ fields是一個數組可以預測hmget使用數組作爲多個字段的參數
它也可以接受字符串的許多參數作爲字段嗎?例如: $ client-> hmget($ key,$ field1,$ field2,$ field3);
可以預測使用數組作爲hmget()的第二個參數一次檢索多個字段?例如 $ client-> hmget($ key,$ fields); // $ fields是一個數組可以預測hmget使用數組作爲多個字段的參數
它也可以接受字符串的許多參數作爲字段嗎?例如: $ client-> hmget($ key,$ field1,$ field2,$ field3);
Predis支持可變參數Redis命令傳遞多個密鑰(或多個密鑰與值)的兩種方式。第一種基本上遵循由Redis documentation所限定,因此,使用HMSET和HMGET作爲例子,你將有命令的相同的簽名:
$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"));
選擇使用哪一個實際上只是一個偏好問題。
從Predis庫
$redis->hmset('metavars', 'foo', 'bar', 'hoge', 'piyo', 'lol', 'wut');
$redis->hmget('metavars', 'foo', 'hoge', 'unknown'));
這是不好的投票下來的問題。當你不是100%確定並且只是想澄清1%的不確定性時有什麼問題 –
對不起,@ nrk只有第二種方法適用於我。文檔https://github.com/phpredis/phpredis#hmget表明它是一個數組。第一種方法返回false。它是否依賴於特定的版本? –
@SanathBallal phpredis不是Predis,這個問題(和我的答案)與後者有關。 – nrk
沒錯。謝謝@ nrk –