redis集合命令

发布时间:2017-04-05编辑:lianpenglin阅读(970)

    本章将对最常用的集合命令进行介绍,包括插入命令、移除命令、将元素从一个集合移动到另一个集合的命令,以及对多个集合执行交集运算、并集运算和差集运算的命令。

    表3-1展示了其中一部分最常用的集合命令。

    命令用例和描述
    SADDSADD key-name item [item ...]-将一个或多个元素添加到集合里,并返回被添加元素当中原本并不存在于集合里面的元素数量
    SREMSREM key-name item [item....]-从集合里移除一个元素或多个元素,并返回被移除的元素数量
    SISMEMBERSISMEMBER key-name item---检查元素item是否存在于集合key-name里
    SCARDSCARD key-name返回集合包含的元素数量
    SMEMBERSSMEMBERS key-name返回集合中所有的元素
    SRANDMEMBERSRANDMEMBER key-name [count] ------从集合中随机返回一个或多个元素。当count为正数时,命令返回的随机元素不会重复,当count为负数时,命令返回的随机元素会重复
    SPOPSPOP key-name------随机的移除集合中的一个元素,并返回被移除的元素
    SMOVESMOVE source-key dest-key item-----如果集合source-key包含元素item,那么从集合source-key里面移除item,并将元素item添加到集合dest-key中,如果item被成功移除返回1,否则返回0

    下面是具体代码:

    <?php
    /*
     * redis集合命令
     * 
     */
    $redis = new Redis();
    $redis->connect('127.0.0.1',"6379");
    echo $redis->sAdd('set-key','a','b','c');//返回添加的数量
    echo "<br/>";
    echo $redis->srem('set-key','c','d');//返回移除成功的数量
    echo "<br/>";
    echo $redis->scard('set-key');//返回集合的长度
    echo "<br/>";
    $a = $redis->sMembers('set-key');//返回集合所有的元素
    echo "<pre/>";
    var_dump($a);
    echo $redis->sMove('set-key','set-key1','a');//将一个集合中的元素移动到另一个集合
    echo $redis->sMove('set-key','set-key1','c');
    echo "<br/>";
    
    echo $redis->sAdd('set1','a','b','c','d');
    echo "<br/>";
    echo $redis->sAdd('set2','a','b','c','e','f','g');
    echo "<br/>";
    $diff = $redis->sDiff('set1','set2');//返回存在于地一个集合但不存在与第二个集合的元素
    var_dump($diff);
    $inte = $redis->sInter('set1','set2');//返回存在第一个集合也存在第二个集合的元素
    var_dump($inte);
    $union = $redis->sUnion('set1','set2');//返回至少存在于一个集合的元素
    var_dump($union);

    案例中没有的命令就请读者自行研究

标签php

如果对你有用打赏一下吧!