【问题标题】:Cannot Use BITOP in Predis PHP无法在 Predis PHP 中使用 BITOP
【发布时间】:2015-03-13 05:39:20
【问题描述】:

我在 Predis 中使用命令 SETBIT

$key = 'ONLINE_APP:1234:2015_03_13:12_11');
$redis->setbit($key,1,1);
$redis->expire($key,1000);

$redis->setbit($key,2,1);
$redis->expire($key,1000);

$key2 = 'ONLINE_APP:1234:2015_03_13:12_12';
$redis->setbit($key,3,1);
$redis->expire($key,1000);

并使用BITOP统计在线用户

$redis->bitop('OR','ONLINE', $key1.' '.$key2);
$totalOnline = $redis->bitcount('ONLINE');
echo 'Total Online: '.$totalOnline

结果:

Total Online: 0

我怎么了?正确的结果必须是:

Total Online: 3

【问题讨论】:

  • 谢谢@misterion,这是正确的代码$redis->bitop('OR','ONLINE', $key1, $key2);

标签: php redis predis


【解决方案1】:

看起来你只是在这个库中传递参数时出错了。它看起来应该是

$redis->bitop('OR','ONLINE', $key1, $key2);

【讨论】:

  • 虽然这段代码 sn-p 可以解决问题,但including an explanation 确实有助于提高帖子的质量。请记住,您是在为将来的读者回答问题,而这些人可能不知道您提出代码建议的原因。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-13
相关资源
最近更新 更多