PHPRedis和SMEMBERS

时间:2014-10-29 13:21:09

标签: php symfony redis phpredis

我正在尝试使用Redis和PHP的一些东西,并且在使用SETSSMEMBERS时我遇到了问题。

我正在使用Symfony2和SncRedisBundle

$redis->multi();
// Some stuff
$result = $redis->smembers("myset");
var_dump($result);
die();
$redis->exec();

这里是转储

object(Redis)[990]
  public 'socket' => resource(841, Redis Socket Buffer)

我现在有点陷入困境,我不知道如何处理结果,因为在php-redis文档中没有真正可见或解释过。

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

你应该检查$ redis-> exec()的结果而不是smembers的结果。 MULTI / EXEC块的原理是命令执行被延迟到EXEC命令。此时,所有命令都以原子方式执行,并将结果发送回客户端。

请参阅此示例:https://github.com/nicolasff/phpredis#transactions

请注意,在内部只使用一个命令使用MULTI / EXEC块是没有意义的,并没有带来任何好处。