• redis中有序集合zset的相关操作


    本篇主要分享PHP中Redis的zset(有序集合)相关操作。

    1、zAdd()

    zAdd()的语法格式是:$redis->zAdd(key, score, value),作用是向有序集合key中添加元素value,score用于排序。如果该元素已经存在,则根据score更新该元素的顺序。例如:

    //添加元素到有序集合set
    $redis->zAdd('set', 1, 'b');
    $redis->zAdd('set', 0, 'a');
    //输出所有元素
    print_r($redis->zRange('set', 0, -1));

    程序运行输出:Array ( [0] => a [1] => b )


    2、zRange()/zRevRange()

    zRange()的语法格式是:$redis->zRange(key, start, end),作用是返回有序集合key中的index从start到end的所有元素【升序】。end为-1时,返回所有元素。zRevRange()的语法相同,但是输出是降序输出。


    3、zDelete()/zRem()

    zDelete()的语法格式是:$redis->zDelete(key, value),作用是删除有序集合key中的元素value。


    4、zCount()

    zCount()的语法格式是:$redis->zCount(key, star, end),作用是返回有序集合key中,index从start到end间的【包括start和end】所有元素的个数。


    5、zRemRangeByScore()/zDeleteRangeByScore()

    zRemRangeByScore()的语法格式是:$redis->zRemRangeByScore(key, start, end),作用是删除有序集合key中,index从start到end间的【包括start和end】所有元素,返回删除元素的个数。


    6、zSize()/zCard()

    zSize()的语法格式是:$redis->zSize(key),作用是返回有序集合key中的元素个数。


    7、zScore()

    zScore()的语法格式是:$redis->zScore(key, value),作用是返回有序集合key中元素value的score。例如:

    //添加元素到有序集合set
    $redis->zAdd('set', 1, 'b');
    print_r($redis->zScore('set', 'b'));

    程序运行输出:1


    8、zRank()/zRevRank()

    zRank()的语法格式是:$redis->zRand(key, value),作用是返回有序集合key【元素已按score从小到大排序】中元素value的rank。若没有val元素,返回“null”。zRevRank()是大到小排序。例如:

    //添加元素到有序集合set
    $redis->zAdd('set', 1, 'b');
    $redis->zAdd('set', 0, 'a');
    $redis->zAdd('set', 4, 'c');
    $redis->zAdd('set', 5, 'd');
    print_r($redis->zRank('set', 'd'));

    程序运行输出:3


    9、zIncrBy()

    zIncrBy()的语法格式是:$redis->zIncrBy(key, increment, value),作用是将有序集合key中的元素value的score增加increment,若元素value不存在,否则向集合中添加该元素,其score的值为increment。例如:

    //添加元素到有序集合set
    $redis->zAdd('set', 1, 'b');
    $redis->zAdd('set', 0, 'a');
    $redis->zAdd('set', 4, 'c');
    $redis->zAdd('set', 5, 'd');
    //输出元素c目前的score
    echo $redis->zScore('set', 'c') . " ";
    $redis->zIncrBy('set', 2, 'c');
    //输出元素c目前的score
    echo $redis->zScore('set', 'c');

    程序运行输出:4 6

  • 相关阅读:
    依次逐个亮灯并且每次只能亮一个灯的跑马灯程序
    逐个点亮LED灯,再逐个熄灭LED灯的跑马灯程序---基于74HC595移位锁存器,程序框架用switch语句
    把74HC595驱动程序翻译成类似单片机IO口直接驱动的方式
    两片联级74HC595驱动16个LED灯的基本驱动程序
    树莓派
    Linux I2C驱动
    转:使用 /proc 文件系统来访问 Linux 内核的内容
    转: 使用 /sys 文件系统访问 Linux 内核
    树梅派 -- 通过/sys读写ADC芯片 pcf8591
    树莓派 -- oled 续(2) python
  • 原文地址:https://www.cnblogs.com/ssfs/p/6667375.html
Copyright © 2020-2023  润新知