您现在的位置是:网站首页 > 台长笔记

TP5框架下Redis删除操作的坑!

台长大人2024-05-30 15:52:0470人围观

    TP5框架下操作Redis,按照提示用rm()就可以了,但跑起来会报错,提示“Function Redis::delete() is deprecated”,意思是delete()方法已经被废弃,网上说用del()方法就可以了,结果用del()方法操作的时候又会报错"Call to undefined method think\cache\driver\Redis::del()",感觉很扯,似乎是个死循环。

    后来找到一个靠谱的方法,就是把/thinkphp/library/think/cache/driver/Redis.php文件里面165行左右rm()方法里面的delete()改成del()就可以了。

    改之前:
    public function rm($name)
    {
        return $this->handler->delete($this->getCacheKey($name));
    }

    改之后:
    public function rm($name)
    {
        return $this->handler->del($this->getCacheKey($name));
    }

    后来仔细看了下,其实就是TP5Redis驱动版本和安装的Redis版本不一致的原因导致的,懒得乱折腾了,所以直接用这个讨巧的方法先处理了

点击排行