thinkphp5的自帶redis類方法,只有簡單的讀取緩存、寫入緩存的基本方法,遠(yuǎn)不能滿足我們業(yè)務(wù)的需求。redis本身支持五種數(shù)據(jù)類型,string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有序集合)。redis的東西就不必再介紹了,接下來還是讓我一起擴(kuò)展thinkphp5的redis方法吧!
-
首先我們先找到緩存驅(qū)動類里的,handler()方法,這個方法是返回Redis類的實例化對象的。
image.png
說明:這就是實例化對象,包括了options配置項、handler資源句柄、tag標(biāo)簽。實際上這里的handler是new Redis()的對象實例。只要在外部拿到handler資源句柄,則可以對redis的操作進(jìn)行擴(kuò)展了。

image.png
-
在cache類里新增一個getHandler方法。
image.png
/**
* 返回redis對象
*/
public static function getHandler()
{
self::init();
return self::$handler;
}
-
接著我們就可以在控制器調(diào)用了
image.png
打印結(jié)果如下:

image.png
這里需要注意的是:
一個是調(diào)thinkphp5的redis的方法,就是這樣用。

image.png
一個是如果你要調(diào)用原生的redis方法

image.png
基本的用法都講完了。
接下來就愉快的開始擴(kuò)展redis方法吧。
先找到這個類

image.png
在里面添加 談價list 列表的方法;之后可以在里面繼續(xù)添加其他redis數(shù)據(jù)類型的操作方法。
-
控制器里操作
image.png -
通過redis管理工具可以看到列表數(shù)據(jù)已經(jīng)存儲進(jìn)來了。
image.png 完美解決!




