thinkphp5的自带redis类方法,只有简单的读取缓存、写入缓存的基本方法,远不能满足我们业务的需求。redis本身支持五种数据类型,string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有序集合)。redis的东西就不必再介绍了,接下来还是让我一起扩展thinkphp5的redis方法吧!
-
首先我们先找到缓存驱动类里的,handler()方法,这个方法是返回Redis类的实例化对象的。
说明:这就是实例化对象,包括了options配置项、handler资源句柄、tag标签。实际上这里的handler是new Redis()的对象实例。只要在外部拿到handler资源句柄,则可以对redis的操作进行扩展了。
-
在cache类里新增一个getHandler方法。
/**
* 返回redis对象
*/
public static function getHandler()
{
self::init();
return self::$handler;
}
-
接着我们就可以在控制器调用了
打印结果如下:
这里需要注意的是:
一个是调thinkphp5的redis的方法,就是这样用。
一个是如果你要调用原生的redis方法
基本的用法都讲完了。
接下来就愉快的开始扩展redis方法吧。
先找到这个类
在里面添加 谈价list 列表的方法;之后可以在里面继续添加其他redis数据类型的操作方法。
-
控制器里操作
-
通过redis管理工具可以看到列表数据已经存储进来了。
完美解决!