php使用redis的lrem删除队列元素的正确方法,不然会报错:Redis::lrem() expects parameter 3 to be int, string given
按redis文档里出现的方法说:
Redis Lrem 根据参数 COUNT 的值,移除列表中与参数 VALUE 相等的元素。
COUNT 的值可以是以下几种:
- count > 0 : 从表头开始向表尾搜索,移除与 VALUE 相等的元素,数量为 COUNT 。
- count < 0 : 从表尾开始向表头搜索,移除与 VALUE 相等的元素,数量为 COUNT 的绝对值。
- count = 0 : 移除表中所有与 VALUE 相等的值。
语法
redis Lrem 命令基本语法如下:
redis 127.0.0.1:6379> LREM KEY_NAME COUNT VALUE这样没错,于是你就会一样的写:
$redis->lrem(Key, count, value);
ok,你就报错了。
报如下的错误:
那么解决的办法是怎么样的呢?
如下:
$redis->lrem(Key, value, count);这才是正确的,需要换下位置,不然它就一直报第三个参数必须为整数,就是上图所示。
本文由37°5【https://www.alvinxiao.com 】【https://blog.alvinxiao.com】原创,转载请注明来源。请注意原创和打造和谐的网络环境,谢谢!