您现在的位置是:首页 > PHP框架交流PHP框架交流
yii框架中yiisoft/yii2-redis redis操作之list
上善若水2021-07-07 00:50:05【PHP框架交流】 2089人已围观
简介1.lpushhttps://redis.io/commands/lpush将所有指定的值插入存储在的列表的头部key。如果key不存在,则在执行推送操作之前将其创建为空列表。当key保存的值不
php redis常用操作list函数总结
1. lpush https://redis.io/commands/lpush
将所有指定的值插入存储在 的列表的头部key。如果key不存在,则在执行推送操作之前将其创建为空列表。当key保存的值不是列表时,将返回错误。
可以使用单个命令调用推送多个元素,只需在命令末尾指定多个参数。元素一个接一个地插入到列表的头部,从最左边的元素到最右边的元素。例如,该命令LPUSH mylist a b c将生成一个包含c第一个元素、b第二个元素和a第三个元素的列表。
$redis = \Yii::$app->redis;
$redis->lpush('test_list','list1','list2','list3');//依次插入头部 最终返回顺序为 list3 list2 list1
2. lindex https://redis.io/commands/lindex
返回index存储在 的列表中索引处的元素key。索引从零开始,因此0表示第一个元素、1第二个元素等。负索引可用于指定从列表尾部开始的元素。在这里,-1表示最后一个元素,-2表示倒数第二个等等。
当值key不是列表时,返回错误。
$redis = \Yii::$app->redis;
echo $redis->lindex('test_list',1);//第二个元素
echo $redis->lindex('test_list',-1);//最后一个元素
3.linsert https://redis.io/commands/linsert
在啥之前或之后插入元素,若元素重复则匹配到第一个元素后就插入
$redis = \Yii::$app->redis;
echo $redis->linsert('test_list','after','tttt','2333');
4.llen https://redis.io/commands/llen
获取lish元素中个数
$redis = \Yii::$app->redis;
echo $redis->llen('test_list');
5.lpop Remove and get the first element in a list. <https://redis.io/commands/lpop>
移除首个元素并返回这个元素
$redis = \Yii::$app->redis;
echo $redis->lpop('test_list');
6.lpushx Prepend a value to a list, only if the list exists. https://redis.io/commands/lpushx
插入首部 仅key存在时
$redis = \Yii::$app->redis;
echo $redis->lpushx('notexist',123);
7.lrange Get a range of elements from a list. https://redis.io/commands/lrange
获取指定区间的list元素 返回数组
$redis = \Yii::$app->redis;
$res= $redis->lrange('test_list',0,-2);
var_dump($res);
8.lrange Remove elements from a list. https://redis.io/commands/lrem
从存储在 的列表中删除第一次count出现的等于 的元素。该参数影响在以下几个方面的工作:elementkeycount
count > 0: 删除元素等于element从头到尾移动。
count < 0: 删除元素等于element从尾部移动到头部。
count = 0: 删除所有等于 的元素element。
例如,LREM list -2 “hello”将删除”hello”存储在 的列表中最后两次出现的 list。
请注意,不存在的键被视为空列表,因此当key不存在时,该命令将始终返回0
$redis = \Yii::$app->redis;
$res= $redis->lrem('test_list',-1,'list2');//删除最后一次出现的list2
var_dump($res);
9.lset Set the value of an element in a list by its index. https://redis.io/commands/lset
指定位置插入元素
$redis = \Yii::$app->redis;
$res= $redis->lset('test_list',-1,'list2');//列表末尾插入list2
10.ltrim Trim a list to the specified range. https://redis.io/commands/ltrim
截取数组指定范围
$redis = \Yii::$app->redis;
$res= $redis->ltrim('test_list',0,5);//截取列表第保留前6个元素
很赞哦! (5)
相关文章
随机图文
-
springboot整合thymeleaf springboot博客(二)
当前环境下thymeleaf无疑是使用最为广泛的模板引擎,随着spring完善,出现了许多优秀的页面渲染技术,jsp技术已经越来越少人使用,thymeleaf无疑是主流,一起来学习thymeleaf整 -
海底大猎杀v0.13.0 无限金币全鱼类破解教程 免破解补丁
在网上下载海底大猎杀v0.13.0,发现不是无限金币,而且鱼类没有完全解锁,也下载的所谓的7项修改器,发现无法检车游戏,更无法修改,最终发现了无限金币全鱼类破解教程,非破解补丁.具体教程:破解视频教程 -
centos创建软链接 linux如何创建快捷方式
centos创建软链接 linux如何创建快捷方式,一般情况下,我们下载文件会才用软链接的方式去处理,不直接放在网站的public目录下,有时候需要我们创建软链接,每次用每次百度,用一次忘一次。 软链 -
ThinkPHP6.0 数据集
数据集模型的select查询方法返回数据集对象 think\model\Collection,该对象继承自think\Collection,因此具有数据库的数据集类的所有方法,而且还提供了额