当我获取/转储列表时,红色 (PHP) 中的 LPUSH 函数抛出布尔值(假)


LPUSH function in redis (PHP) throwing bool(false) when I get/dump list

好吧,所以...问题是这样的:我正在将变量值推送到一个名为"键"的列表。当我尝试获取并输出该列表的值时...它声称列表为空(bool(false))。语法似乎是正确的。这段代码在其他场合也有效(事实上,我只是在浏览每个函数并测试/重构/改进我已经编写的内容)。我被困住了,我完全被困住了。以下是代码(带有相关注释):

$kw = $_REQUEST['keyword']; //we're passing a value to this in a query string
if(empty($kw)){                                 
    $key = 'default';      
    createRedis($key); 
}else{
    $key = $kw;          
createRedis($key);    
}
function{   
    $key = $a;
    $r = new Redis(); 
    $r->connect( 'localhost' );         
    $r->LPUSH( 'keys',$key );   // $key echos a value when one is passed in
    echo $key;                  // a query string, BUT....
    $keys=$r->get('keys');      //'keys'... the redis list
    var_dump($keys);        // throws a bool(false) when dumped     
}

我错过了什么疯狂的东西吗?Redis 在我的服务器上被测试为正常工作。否则,我无法弄清楚这到底出了什么问题。以下是关于 phpredis 的 LPUSH 的文档(我们正在使用(它也已安装并工作)): https://github.com/nicolasff/phpredis#lpush和Redis 网站上的相关文档(这些是 CLI 示例):http://redis.io/commands/lpush

任何帮助都真诚地感谢。也许我正在使用一种无效的方法来测试 redis 列表"键"是否保留了价值?(这就是转储的全部目的)。

你必须

使用lrange而不是get

$keys = $r->lrange('keys', 0, -1);