PHP と Redis を使用して小さな関数ランキング リストを実装します。使用されるデータ型は順序付きセットです: zrevrange 昇順ソート、zrange 降順ソート
/** * 排行榜 */public function rank() {// $this->zrem($this->cachekey);$this->redis->del($this->cachekey);$dataOne = [];for ($i=0; $i < 5; $i++) { // 生成随机数$num = rand(0,100);// 生成随机字符串$str = $this->get_random(6,'abcdefghijklmnopqrstuvwxyzABCDEFJHIJKLMNOPQRSTUVWXYZ'); $this->redis->zadd($this->cachekey,$num,json_encode(['name'=>$str]));// 由大到小排序$dataOne = $this->redis->ZREVRANGE($this->cachekey, 0, -1, true);// 由小到大排序$dataTow = $this->redis->ZRANGE($this->cachekey, 0, -1, true); }echo "<pre class="brush:php;toolbar:false">";print_r($dataOne);print_r($dataTow); }// 生成随机字符串public function get_random($len,$chars) {$hash = "";$max = strlen($chars) - 1;for ($i=0; $i < $len; $i++) { $hash .= $chars[mt_rand(0,$max)]; }return $hash; }
以上がPHP+Redisを使ってランキングリストを実装する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。