redis list类型的使用实例

 作者:Blue

 上传时间:2018-01-07

 标签:

Redis列表(List)是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边)
一个列表最多可以包含 232 - 1 个元素 (4294967295, 每个列表超过40亿个元素)。
常用命令:
1、推入元素
LPUSH list item [item …] —— 将一个或多个元素推入到列表的左端
LPUSHX list item —— 仅在列表已经存在的情况下,将一个元素推入到列表的左端 RPUSH list item [item …] —— 将一个或多个元素推入到列表的右端
RPUSHX list item —— 仅在列表已经存在的情况下,将一个元素推入到列表的右端
2、弹出元素:
LPOP list —— 移除并返回列表左端第一个元素
RPOP list —— 移除并返回列表右端第一个元素
BLPOP list [list …] timeout —— 在指定的时限内,弹出首个非空列表的最左端元素 BRPOP list [list …] timeout —— 在指定的时限内,弹出首个非空列表的最右端元素
3、弹出元素然后推入元素
RPOPLPUSH source_list target_list —— 弹出源列表的最右端元素,并将该元素推入到 目标列表的左端
BRPOPLPUSH source_list target_list timeout —— 在指定的时限内,尝试弹出源列表 的最右端元素,并将该元素推入到目标列表的左端
4、元素的获取与管理
LINDEX list index —— 获取列表在给定索引上的元素
LLEN list —— 返回列表包含的元素数量
LRANGE list start end —— 返回列表在指定索引范围内的所有元素
LINSERT list BEFORE|AFTER target item —— 将给定的元素插入到目标元素的前面或 者后面
LREM list count item —— 从列表中移除给定的元素
LSET list index item —— 把列表在指定索引上的值修改为给定的元素 LTRIM list start end —— 对列表进行修剪,只保留指定索引范围内的元素
实例:
1、实现队列
使用命令rpush、brpop实现队列的入队与消费。具体业务根据实际需要写吧。

Redis::rpush($list_key, $value);//入队
Redis::brpop($list_key, 1);//消费

未完待续……


欢迎支付宝打赏


   常用下载
  • wkhtmltox 一款将html转换成pdf的软件,laravel有相关支持包  
  • linux一键环境OneinStack(支持lnmp,lamp)