List (列表)
List 是一个简单的 String 列表,按照插入顺序排序。可以添加一个元素到 List 的头部或者尾部。一个 List 最多可以包含 232 - 1 个元素(40多亿)。
应用场景
信息列表
例如微博的信息流这种,可以按照时间顺序排列显示。
任务队列
可以将任务添加进 List 中,然后根据顺序执行任务。
关注列表
可以存储关注列表、粉丝列表等(Set 也是一个选择)。
实例
del($redisKey);$redis->lPush($redisKey, 'kobe');// 插入到list头部print_r($redis->lRange($redisKey, 0, -1));// 取出list中所有数据 Array ( [0] => kobe )echo '';$redis->rPush($redisKey, 'Gasol');// 插入到list尾部;print_r($redis->lRange($redisKey, 0, -1));// Array ( [0] => kobe [1] => Gasol )echo '';echo $redis->lLen($redisKey) . '';// 获取list长度 2echo $redis->lIndex($redisKey, 1) . '';// 通过索引获取值 Gasol$redis->lInsert($redisKey, 'before', 'kobe', 'fisher');// 在某个值 before/after 插入新值print_r($redis->lRange($redisKey, 0, -1));// Array ( [0] => fisher [1] => kobe [2] => Gasol )echo '';print_r($redis->lRange($redisKey, 2, 3));// 获取指定范围的值 Array ( [0] => Gasol )echo '';$redis->lSet($redisKey, 2, 'iverson');// 通过索引设置值print_r($redis->lRange($redisKey, 0, -1));// Array ( [0] => fisher [1] => kobe [2] => iverson)echo '';$redis->lRem($redisKey, 'iverson', 0);// 移除list中值 第三个参数参见下方链接print_r($redis->lRange($redisKey, 0, -1));// Array ( [0] => fisher [1] => kobe )echo '';echo $redis->lPop($redisKey) . '';// 移除并且获取list的第一个元素 fisher$redis->rPush($redisKey, 'Gasol');echo $redis->rPop($redisKey) . '';// 移除并且获取list的最后一个元素 Gasol$redis->lPushx('name_list1', 'kobe');// 插入到list头部,无当前list时不生效print_r($redis->lRange('name_list1', 0, -1));// Array ( )echo '';$redis->rPushx('name_list2', 'kobe');// 插入到list尾部,无当前list时不生效print_r($redis->lRange('name_list2', 0, -1));// Array ( )echo '';$redis->lPush($redisKey, 'Gasol', 'fisher', 'iverson');$redis->lTrim($redisKey, 2, 3);// 只保留指定区间的值,其他都删除print_r($redis->lRange($redisKey, 0, -1));// Array ( [0] => Gasol [1] => kobe )echo '';
参考资料:、。