laravel redis 命令 - 4.List(列表)

BLPOP

BLPOP 是列表的阻塞式(blocking)弹出原语。
它是 LPOP 命令的阻塞版本,当给定列表内没有任何元素可供弹出的时候,连接将被 BLPOP 命令阻塞,直到等待超时或发现可弹出元素为止。
格式:BLPOP key [key ...] timeout
返回值:
如果列表为空,返回一个 nil 。
否则,返回一个含有两个元素的列表,第一个元素是被弹出元素所属的 key ,第二个元素是被弹出元素的值。

BRPOP

BRPOP 是列表的阻塞式(blocking)弹出原语。
它是 RPOP 命令的阻塞版本,当给定列表内没有任何元素可供弹出的时候,连接将被 BRPOP 命令阻塞,直到等待超时或发现可弹出元素为止。
格式:BRPOP key [key ...] timeout

BRPOPLPUSH

BRPOPLPUSH 是 RPOPLPUSH 的阻塞版本,当给定列表 source 不为空时, BRPOPLPUSH 的表现和 RPOPLPUSH 一样。
当列表 source 为空时, BRPOPLPUSH 命令将阻塞连接,直到等待超时,或有另一个客户端对 source 执行 LPUSH 或 RPUSH 命令为止。
超时参数 timeout 接受一个以秒为单位的数字作为值。超时参数设为 0 表示阻塞时间可以无限期延长(block indefinitely) 。
格式:BRPOPLPUSH source destination timeout
返回值:
假如在指定时间内没有任何元素被弹出,则返回一个 nil 和等待时长。
反之,返回一个含有两个元素的列表,第一个元素是被弹出元素的值,第二个元素是等待时长。

LINDEX

返回列表 key 中,下标为 index 的元素。
格式:LINDEX key index
返回值:
列表中下标为 index 的元素。
如果 index 参数的值不在列表的区间范围内(out of range),返回 nil 。

LINSERT

将值 value 插入到列表 key 当中,位于值 pivot 之前或之后。
格式:LINSERT key BEFORE|AFTER pivot value
返回值:
如果命令执行成功,返回插入操作完成之后,列表的长度。
如果没有找到 pivot ,返回 -1 。
如果 key 不存在或为空列表,返回 0 。

LLEN

返回列表 key 的长度。
格式:LLEN key
返回值:
列表 key 的长度。

LPOP

移除并返回列表 key 的头元素。
格式:LPOP key
返回值:
移除并返回列表 key 的头元素。

LPUSH

将一个或多个值 value 插入到列表 key 的表头, key不存在自动创建
如果有多个 value 值,那么各个 value 值按从左到右的顺序依次插入到表头: 比如说,对空列表 mylist 执行命令 LPUSH mylist a b c ,列表的值将是 c b a ,这等同于原子性地执行 LPUSH mylist a 、 LPUSH mylist b 和 LPUSH mylist c 三个命令。
格式:LPUSH key value [value ...]
返回值:
执行 LPUSH 命令后,列表的长度。

LPUSHX

将值 value 插入到列表 key 的表头,当且仅当 key 存在并且是一个列表。
和 LPUSH 命令相反,当 key 不存在时, LPUSHX 命令什么也不做。
格式:LPUSHX key value
返回值:
LPUSHX 命令执行之后,表的长度。

LRANGE

返回列表 key 中指定区间内的元素,区间以偏移量 start 和 stop 指定。
格式:LRANGE key start stop
返回值:
一个列表,包含指定区间内的元素。

LREM

根据参数 count 的值,移除列表中与参数 value 相等的元素。
格式:LREM key count value
参数解释:
count 的值可以是以下几种:
count > 0 : 从表头开始向表尾搜索,移除与 value 相等的元素,数量为 count 。
count < 0 : 从表尾开始向表头搜索,移除与 value 相等的元素,数量为 count 的绝对值。
count = 0 : 移除表中所有与 value 相等的值。
返回值:
被移除元素的数量。
因为不存在的 key 被视作空表(empty list),所以当 key 不存在时, LREM 命令总是返回 0 。

LSET

将列表 key 下标为 index 的元素的值设置为 value 。
格式:LSET key index value
返回值:
操作成功返回 ok ,否则返回错误信息。

LTRIM

对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。
格式:LTRIM key start stop
返回值:
命令执行成功时,返回 ok 。

RPOP

移除并返回列表 key 的尾元素。
格式:RPOP key
返回值:
列表的尾元素。
当 key 不存在时,返回 nil 。

RPOPLPUSH

命令 RPOPLPUSH 在一个原子时间内,执行以下两个动作:

  • 将列表 source 中的最后一个元素(尾元素)弹出,并返回给客户端。
  • 将 source 弹出的元素插入到列表 destination ,作为 destination 列表的的头元素。
    格式:RPOPLPUSH source destination
    返回值:
    被弹出的元素。

RPUSH

将一个或多个值 value 插入到列表 key 的表尾(最右边)。
格式:RPUSH key value [value ...]
返回值:
执行 RPUSH 操作后,表的长度。

RPUSHX

将值 value 插入到列表 key 的表尾,当且仅当 key 存在并且是一个列表。
和 RPUSH 命令相反,当 key 不存在时, RPUSHX 命令什么也不做。
格式:RPUSHX key value
返回值:
RPUSHX 命令执行之后,表的长度。

你可能感兴趣的:(laravel redis 命令 - 4.List(列表))