php操作redis,秩序集合zset

2340 ワード

一般的な規則化された集合操作には、次のようなものがあります.
1、集合にメンバーを追加するzAdd、zIncrBy
2、上位N名zRevRangeを取り出す
3、指定メンバーzDelete、zRem、zRemoveを削除する
4、あるメンバーの順位と点数zSorce、zRevRankを取り出す
5、統計数量zSize、
6、統計指定点数区間の個数zCount
7、指定された点数区間を満たすメンバーを取り出し、総小から大zRangeByScoreまで
8、全メンバーを取り出すzRange
connect('127.0.0.1', 6379);
if ($result !== true) {
    echo "  redis  !";
    exit;
}
$result = $redis->auth('123456'); //  
if ($result !== true) {
    echo "auth err";
    exit;
}

echo "
";

//    
//    ,
echo "1、        
"; // key sort $redis->zAdd('sort', 80, 'mrtwenty'); // , $redis->zAdd('sort', 92, 'xiaohei'); $redis->zAdd('sort', 99, 'zhao'); $redis->zAdd('sort', 90, 'xiaoming'); //A , A , 1, A 1, 1 , $redis->zIncrBy('sort', 1, 'A'); print_r($redis->zRange('sort', 0, -1)); echo "
"; echo "2、
"; $list = $redis->zRevRange('sort', 0, 2); print_r($list); echo " ,
"; $list = $redis->zRevRange('sort', 0, 2, true); print_r($list); echo "
"; echo "3、zDelete、zRem、zRemove , 1 , 0
"; $result = $redis->zDelete('sort', 'A'); echo "4、
"; printf(" zhao :%d
", $redis->zScore('sort', 'zhao')); // false ,0 zRevRank zRank printf(" zhao :%d
", $redis->zRevRank('sort', 'zhao')); printf("5、 :%d
", $redis->zSize('sort')); // zCard printf("6、 80 100 :%d
", $redis->zCount('sort', 80, 100)); echo "7、 ,
"; $list = $redis->zRangeByScore('sort', 90, 100); //withscores ,limit // $list = $redis->zRangeByScore('sort', 90, 100, ['withscores' => true, 'limit' => [0, 2]]); print_r($list); echo "
"; //8、 key,0 ,-1 echo "8、 :
"; $list = $redis->zRange('sort', 0, -1); print_r($list);