您现在的位置是:首页 > PHP框架交流PHP框架交流
yii框架中yiisoft/yii2-redis redis操作之list
上善若水2021-07-07 00:50:05【PHP框架交流】 2707人已围观
简介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)
相关文章
随机图文
-
PHP8.1新特性 Final 类常量
PHP8.1新特性 Final 类常量 大家都知道cost修饰的常量是不可以改变的,然而再继承中却可以改变,新版的final就解决这个问题。旧版写法 class Foo { public co -
ThinkPHP6上传图片七牛云
ThinkPHP6如何上传图片七牛云,如何上传文件到七牛云对象储存cos,总所周知图片是特别消耗网站带宽的,个人网站将图片上传至七牛云才能显著提升网站的响应速度,手把手交大家如何上配置ThinkPHP -
如何判断一个人是否适合做程序员?
软件蚕食一切,未来是属于程序员。人人都想学编程,但并非人人都适合编程。有人说:IT行业只有高智商的人才能进得去,而且以男性居多,还必须专业对口。事实上呢?很多计算机专业的大学生毕业后并没有从事本专业的 -
幽默笑话:学生们特别喜欢音乐史课,因为任课的音乐老师非常幽默
1、去相亲,正和女方聊得如火如荼,一个三岁左右的女孩走到我身旁,怯怯的叫了声爸爸。我惊出一身冷汗,赶紧同女方解释:“她不是我女儿!”女方淡淡的道:“我知道,她是我女儿!”2、我上大一的时候的事。刚刚军训完,上大学语文。老师是一个中年妇女,上课可认真了,有一次她正讲课,教室后排的同学都在说话,老师大叫一声:“后面的朋友”话刚落音,不知道哪个二货接了句:“你们好吗?”全班同学都笑趴了。3、早上