• Yii redis list列表的使用


    redis 的列表允许用户从序列的两端推入或者弹出元素,获取列表元素,以及执行各种常见的列表操作,这里介绍一些常用的列表处理命令,并在 Yii 中的使用。

    RPUSH

    RPUSH:RPUSH key-name value [value …]
    将一个或多个值推入列表的右端(尾部)

    LPUSH

    LPUSH:LPUSH key-name value [value …]
    将一个或多个值推入列表的左端(头部)

    LLEN

    LLEN:LLEN key-name
    获取列表长度

    RPOP

    RPOP:RPOP key-name
    移除并返回列表最右端的元素

    LPOP

    LPOP:LPOP key-name
    移除并返回列表最左端的元素

    LINDEX

    LINDEX:LINDEX key-name offset
    返回列表中偏移量为 offset 的元素

    LRANGE

    LRANGE:LRANGE key-name start end
    返回列表从 start 偏移量到 end 偏移量范围内的所有元素,其中偏移量为 start 和偏移量为 end 的元素也会包含在被返回的元素之内。其中 0 表示列表的第一个元素, 1表示列表的第二个元素,以此类推。 也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。

    LTRIM

    LTRIM:LTRIM key-name start end
    对列表进行修剪,只保留从 start 偏移量到 end 偏移量范围内的元素,其中偏移量为 start 和偏移量为 end 的元素也会被保留。

    BLPOP

    BLPOP:BLPOP key-name [key-name …] timeout
    从第一个非空列表中弹出位于最左端的元素,或者在 timeout 秒之内阻塞并等待可弹出的元素出现。

    BRPOP

    BRPOP:BRPOP key-name [key-name …] timeout
    从第一个非空列表中弹出位于最右端的元素,或者在 timeout 秒之内阻塞并等待可弹出的元素出现。

    RPOPLPUSH

    RPOPLPUSH:RPOPLPUSH source-key dest-key
    从 source-key 列表中弹出位于最右端的元素,然后将这个元素推入 dest-key 列表的最左端,并向用户返回这个元素。

    BRPOPLPUSH

    BRPOPLPUSH:BRPOPLPUSH source-key dest-key timeout
    从 source-key 列表中弹出位于最右端的元素,然后将这个元素推入 dest-key 列表的最左端,并向用户返回这个元素;如果 source-key 为空,那么在 timeout 秒之内阻塞并等待可弹出的元素出现。

    在 Yii 中使用实例:

    // 将一个或多个值推入列表的右端(尾部)
    Yii::$app->redis->rpush('listKey', 'aaa');
    Yii::$app->redis->rpush('listKey', 'bbb', 'ccc', 'ddd');
    // 将一个或多个值推入列表的左端(头部)
    Yii::$app->redis->lpush('listKey', 'eee', 'fff');
    // 获取列表长度
    Yii::$app->redis->llen('listKey');  // 6
    // 返回列表的所有元素
    Yii::$app->redis->lrange('listKey', 0, -1);  // ["fff","eee","aaa","bbb","ccc","ddd"]
    // 移除并返回列表最右端的元素
    Yii::$app->redis->rpop('listKey');   // ddd
    // 移除并返回列表最左端的元素
    Yii::$app->redis->lpop('listKey');   // fff
  • 相关阅读:
    获取Delphi焦点位置的方法,及所在的控件、以及如何通过控件名称访问控件并赋值
    常用自定义函数
    Delphi编程SQL语句中引号(')、quotedstr()、('')、format()在SQL语句中的用法
    throw new Error() 真实的用法和throw error 的却别
    分别基于和不基于unittest单元测试框架对一个加法做单元测试
    PAT 甲级 1073 Scientific Notation (20 分) (根据科学计数法写出数)
    python flask框架学习(三)——豆瓣微信小程序案例(二)整理封装block,模板的继承...
    第一章 概述
    python flask框架学习(三)——豆瓣微信小程序案例
    python flask框架学习——开启debug模式
  • 原文地址:https://www.cnblogs.com/woods1815/p/12991671.html
Copyright © 2020-2023  润新知