我这样做:
$r = new Predis\Client($single_server, $options);
$retval = $r->blpop('queue:query');
但是我收到了这个错误:
ERR wrong number of arguments for 'blpop' command
每当我这样做时
$r = new Predis\Client($single_server, $options);
$retval = $r->blpop('queue:query',0);
我收到错误:
Error while reading line from the server
从 redis-cli
执行此操作redis 127.0.0.1:6379> BLPOP queue:query
(error) ERR wrong number of arguments for 'blpop' command
redis 127.0.0.1:6379> BLPOP queue:query 0
1) "queue:query"
2) "hello world"
答案 0 :(得分:1)
好像是一个错误。 latest版本没有此问题,也显然删除了名称空间:
<?
include_once "Predis.php";
$r = new Predis_Client();
$retval = $r->blpop('queue:query',0);
var_dump($retval);
?>
我访问该页面时被阻止了。然后,我发出LPUSH queue:query 0
,回到页面,得到了这个:
array(2) { [0]=> string(11) "queue:query" [1]=> string(1) "0" }
尽管如此,我建议使用phpredis,它比这个库更快,因为它被编译为php扩展。如果您拥有服务器的权限,那么这是一个不错的选择。