本文實例講述了thinkphp5框架擴展redis類方法。分享給大家供大家參考,具體如下:
筆者在開發(fā)時發(fā)現(xiàn),thinkphp5的自帶redis類方法,只有簡單的讀取緩存、寫入緩存的基本方法,遠(yuǎn)不能滿足我們業(yè)務(wù)的需求。redis本身支持五種數(shù)據(jù)類型,string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有序集合)。redis的東西就不必再介紹了,接下來還是讓我一起擴展thinkphp5的redis方法吧!
首先我們先找到緩存驅(qū)動類里的,handler()
方法,這個方法是返回Redis類的實例化對象的。
![](/d/20211017/eb634baf1dfbb492f1530569fb93777b.gif)
這就是實例化對象,包括了options配置項、handler資源句柄、tag標(biāo)簽。實際上這里的handler是new Redis()
的對象實例。只要在外部拿到handler資源句柄,則可以對redis的操作進(jìn)行擴展了。
![](/d/20211017/44bba094d747665b6b5f44260130e81b.gif)
在cache類里新增一個getHandler方法。
![](/d/20211017/3ef5691e016a609a2df81f8ba9fcde19.gif)
然后我們就可以在控制器調(diào)用了
![](/d/20211017/24389e14aac3b104dd9faf730013d631.gif)
打印的就是這個redis對象了
![](/d/20211017/ca6cf1c8c9fcb8caec45deb08f1780c9.gif)
這里需要注意的是:
一個是調(diào)thinkphp5的redis的方法,就是這樣用。
![](/d/20211017/dd39bec3983779383f2b6d37ba102699.gif)
一個是如果你要調(diào)用原生的redis方法
![](/d/20211017/cb540c714fe376f0518ae58bbcc8fc9f.gif)
基本的用法都講完了。
接下來就愉快的開始擴展redis方法吧。
先找到這個類
![](/d/20211017/bea86af12ccc2a0af46ec6ea7c49d0a4.gif)
這個類里并沒有l(wèi)ist的相關(guān)操作方法,那我們就來擴展list的相關(guān)方法。
這里的話,我就舉一個例子了。
![](/d/20211017/21c486bc9c80358e8c3ad675a28cd9ef.gif)
在控制器里去調(diào)用
![](/d/20211017/57f73fb471642e8693f0b15ed14dd4e7.gif)
這樣就寫入成功了。
![](/d/20211017/9986a7706cbc3c77c1fde520eceae453.gif)
更多關(guān)于thinkPHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《ThinkPHP入門教程》、《thinkPHP模板操作技巧總結(jié)》、《ThinkPHP常用方法總結(jié)》、《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《Zend FrameWork框架入門教程》及《PHP模板技術(shù)總結(jié)》。
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。
您可能感興趣的文章:- Thinkphp5+Redis實現(xiàn)商品秒殺代碼實例講解
- thinkphp5redis緩存新增方法實例講解