Redis は、文字列、ハッシュ、リスト、セット、順序付きセットなどを含む複数のデータ型をサポートする高性能のキー/値ストレージ システムです。 PHP アプリケーションでは、順序付きセット (Zset) は非常に実用的なデータ型です。スコアに基づいて順序付けされたコレクションを使用し、ランキング、スコアリング システム、タスク キューなどのさまざまなシナリオで使用できます。この記事では、PHP アプリケーションにおける Redis の Zset 操作について詳しく紹介します。
1. Zadd コマンド
Zadd コマンドは、順序付きセットにメンバーを追加するために使用されます。
構文: ZADD キー スコア メンバー [スコア メンバー ...]
例:
$redis = new Redis();
$redis->connect ('127.0.0.1', 6379);
$redis->zadd('zset', 1, 'member1');
$redis->zadd('zset', 2, 'member2' );
$redis->zadd('zset', 3, 'member3');
上記のコードは、「zset」という名前の順序付きセットに 3 つのメンバーを追加します。スコアはそれぞれ次のとおりです。 1、2、3であり、メンバーはそれぞれ「member1」、「member2」、「member3」である。
2. Zscore コマンド
Zscore コマンドは、順序付きセット内の指定されたメンバーのスコアを取得するために使用されます。
構文: ZSCORE キー メンバー
例:
$redis = new Redis();
$redis->connect('127.0.0.1', 6379 );
$score = $redis->zscore('zset', 'member1');
echo $score;
上記のコードは、「zset」という名前の順序付きセットを取得します。メンバー「member1」の結果を出力します。
3. Zrange コマンド
Zrange コマンドは、順序付きセット内の指定された範囲内のメンバーを取得するために使用されます。
構文: ZRANGE key start stop [WITHSCORES]
例:
$redis = new Redis();
$redis->connect('127.0.0. 0.1', 6379);
$members = $redis->zrange('zset', 0, -1);
print_r($members);
上記のコードは、 value という名前のソートされたセット「zset」のすべてのメンバーと結果を出力します。
4. Zrevrange コマンド
Zrevrange コマンドは、順序付きセット (スコアによって大きいものから小さいものへソート) 内の指定された範囲内のメンバーを取得するために使用されます。
構文: ZREVRANGE key start stop [WITHSCORES]
例:
$redis = new Redis();
$redis->connect('127.0.0. 0.1', 6379);
$members = $redis->zrevrange('zset', 0, -1);
print_r($members);
上記のコードは、 value という名前の値を「zset」の順序付きセット (スコアによって大きいものから小さいものへソート) 内のすべてのメンバーと結果を出力します。
5. Zcount コマンド
Zcount コマンドは、順序付きセット内の指定されたスコア範囲内のメンバーの数を取得するために使用されます。
構文: ZCOUNT key min max
例:
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$count = $redis->zcount('zset', 2, 3);
echo $count;
上記のコードは、「zset」という名前の順序付きシーケンスを取得します。スコアが 2 ~ 3 であるセット内のメンバーの数と結果を出力します。
6. Zrem コマンド
Zrem コマンドは、順序付きセット内の指定されたメンバーを削除するために使用されます。
構文: ZREM key member [member ...]
例:
$redis = new Redis();
$redis->connect(' 127.0.0.1', 6379);
$redis->zrem('zset', 'member1');
$redis->zrem('zset', 'member2');
上記のコードは、「zset」という名前の順序付きセットから「member1」と「member2」のメンバーを削除します。
7. Zrank コマンド
Zrank コマンドは、順序付きセット (スコアの小さいものから大きいものまでソート) 内の指定されたメンバーのランキングを取得するために使用されます。
構文: ZRANK キー メンバー
例:
$redis = new Redis();
$redis->connect('127.0.0.1', 6379 );
$rank = $redis->zrank('zset', 'member3');
echo $rank;
上記のコードは、「zset」Rank という名前の順序付きセットを取得します。メンバー「member3」を抽出し、結果を出力します。
8. Zrevrank コマンド
Zrevrank コマンドは、順序付きセット (スコアの大きいものから小さいものまでソート) 内の指定されたメンバーのランキングを取得するために使用されます。
構文: ZREVRANK キー メンバー
例:
$redis = new Redis();
$redis->connect('127.0.0.1', 6379 );
$rank = $redis->zrevrank('zset', 'member3');
echo $rank;
上記のコードは、「zset」Rank という名前の順序付きセットを取得します。メンバー「member3」(スコアの大きい順にソート)を取得し、結果を出力します。
9. Zrangebyscore コマンド
Zrangebyscore コマンドは、順序付きセット内の指定されたスコア範囲内のメンバーを取得するために使用されます。
構文: ZRANGEBYSCORE key min max [WITHSCORES] [LIMIT offset count]
例:
$redis = new Redis();
$redis-> connect('127.0.0.1', 6379);
$members = $redis->zrangebyscore('zset', 1, 3);
print_r($members);
上記code スコアが 1 ~ 3 の「zset」という名前のソートされたセットのメンバーを取得し、結果を出力します。
概要
PHP アプリケーションでは、Redis の Zset 操作は非常に実用的です。 Zadd、Zscore、Zrange、Zrevrange、Zcount、Zrem、Zrank、Zrevrank、Zrangebyscoreなどのコマンドを使用することで、さまざまな機能を簡単に実装できます。したがって、Zset の使用をマスターすることは、PHP アプリケーションにおける Redis の基本知識の 1 つです。
以上がPHPアプリケーションにおけるRedisのZset操作の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。