tp5 (自写) 实现redis消息队列 + 排行榜

1:小皮开启redis, 控制器按Ctrl 点击new Redis 进入 redis.php 进行封装

复制代码
//向队列添加数据
//    LPUSH key value1 [value2]
//将一个或多个值插入到列表头部
    public function lPush($key,$value)
    {
        return $this->handler->lPush($key,$value);
    }
    //向队列里面取数据
//        RPOP key
//移除列表的最后一个元素,返回值为移除的元素。
    public function rPop($key)
    {
        return $this->handler->rPop($key);
    }
复制代码

 

 

 

 2:控制器进行调用

复制代码
//    队列存储
    public  function push(){
    Cache::store('redis')->handler()->lPush('k','v','vv','vvv','vvvv');
//        $redis=new Redis();
//        $redis->lPush('sex','nan','nu');
    }
//    队列弹出数据
    public  function pop(){
        $redis=new Redis();
        $redis->rPop('name');
    }
复制代码

 

 

 3:如果报错。在thinkphp/library/think 配置以下代码

 

 

 

    public static function getHandler()
    {
        self::init();
        return self::$handler;
    }

 

 

 redis 排行榜  redis.php封装代码

复制代码
//    队列排行榜
//    ZADD key score1 member1 [score2 member2]
//向有序集合添加一个或多个成员,或者更新已存在成员的分数
    public function zAdd($key, $SCORE, $member)
    {
        return $this->handler->zAdd($key, $SCORE, $member);
    }
//Redis Zrevrank 命令返回有序集中成员的排名。
//其中有序集成员按分数值递减(从大到小)排序。
//ZREVRANK key member
    public function zRevRank($keyNmae, $member)
    {
        return $this->handler->zRevRank($keyNmae,$member);
    }
复制代码

控制器调用代码

复制代码
//    排行榜添加
    public function zAdd()
    {
        $redis = new  Redis();
        $redis->zAdd('name', 98, 'yan');

    }
//排行榜排序,从大到小
    public function zRevRank()
    {
        $redis = new  Redis();
        $redis->zRevRank('name', 'yan');
    }
复制代码

 

posted @   王越666  阅读(457)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示