thinkphp5框架扩展redis类方法示例


Posted in PHP onMay 06, 2019

本文实例讲述了thinkphp5框架扩展redis类方法。分享给大家供大家参考,具体如下:

笔者在开发时发现,thinkphp5的自带redis类方法,只有简单的读取缓存、写入缓存的基本方法,远不能满足我们业务的需求。redis本身支持五种数据类型,string(字符串)、hash(哈希)、list(列表)、set(集合)、zset(有序集合)。redis的东西就不必再介绍了,接下来还是让我一起扩展thinkphp5的redis方法吧!

首先我们先找到缓存驱动类里的,handler()方法,这个方法是返回Redis类的实例化对象的。

thinkphp5框架扩展redis类方法示例

这就是实例化对象,包括了options配置项、handler资源句柄、tag标签。实际上这里的handler是new Redis()的对象实例。只要在外部拿到handler资源句柄,则可以对redis的操作进行扩展了。

thinkphp5框架扩展redis类方法示例

在cache类里新增一个getHandler方法。

thinkphp5框架扩展redis类方法示例

然后我们就可以在控制器调用了

thinkphp5框架扩展redis类方法示例

打印的就是这个redis对象了

thinkphp5框架扩展redis类方法示例

这里需要注意的是:

一个是调thinkphp5的redis的方法,就是这样用。

thinkphp5框架扩展redis类方法示例

一个是如果你要调用原生的redis方法

thinkphp5框架扩展redis类方法示例

基本的用法都讲完了。

接下来就愉快的开始扩展redis方法吧。

先找到这个类

thinkphp5框架扩展redis类方法示例

这个类里并没有list的相关操作方法,那我们就来扩展list的相关方法。

这里的话,我就举一个例子了。

thinkphp5框架扩展redis类方法示例

在控制器里去调用

thinkphp5框架扩展redis类方法示例

这样就写入成功了。

thinkphp5框架扩展redis类方法示例

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

PHP 相关文章推荐
非常好的php目录导航文件代码
Oct 09 PHP
傻瓜化配置PHP环境――Appserv
Dec 13 PHP
php strlen mb_strlen计算中英文混排字符串长度
Jul 10 PHP
PHP 中文乱码解决办法总结分析
Jul 30 PHP
joomla jce editor 解决上传中文名文件失败问题
Jun 09 PHP
值得分享的php+ajax实时聊天室
Jul 20 PHP
php入门教程之Zend Studio设置与开发实例
Sep 09 PHP
Zend Framework入门教程之Zend_Session会话操作详解
Dec 08 PHP
PHP面相对象中的重载与重写
Feb 13 PHP
php获取数据库中数据的实现方法
Jun 01 PHP
PHP 传输会话curl函数的实例详解
Sep 12 PHP
PHP使用redis位图bitMap 实现签到功能
Oct 08 PHP
PHP5.6.8连接SQL Server 2008 R2数据库常用技巧分析总结
May 06 #PHP
PHP实现百度人脸识别
May 06 #PHP
PHP7使用ODBC连接SQL Server2008 R2数据库示例【基于thinkPHP5.1框架】
May 06 #PHP
PHP连接SQL Server的方法分析【基于thinkPHP5.1框架】
May 06 #PHP
php + WebUploader实现图片批量上传功能
May 06 #PHP
thinkPHP5.1框架路由::get、post请求简单用法示例
May 06 #PHP
ThinkPHP5.1框架页面跳转及修改跳转页面模版示例
May 06 #PHP
You might like
PHP函数常用用法小结
2010/02/08 PHP
一个简单php扩展介绍与开发教程
2010/08/19 PHP
php警告Creating default object from empty value 问题的解决方法
2014/04/02 PHP
php获取ajax的headers方法与内容实例
2017/12/27 PHP
JavaScript版代码高亮
2006/06/26 Javascript
导航跟随滚动条置顶移动示例代码
2013/09/11 Javascript
JavaScript 32位整型无符号操作示例
2013/12/08 Javascript
jquery对ajax的支持介绍
2013/12/10 Javascript
深入理解JavaScript系列(22):S.O.L.I.D五大原则之依赖倒置原则DIP详解
2015/03/05 Javascript
JQuery给select添加/删除节点的实现代码
2016/04/26 Javascript
火狐和ie下获取javascript 获取event的方法(推荐)
2016/11/26 Javascript
JS双击变input框批量修改内容
2016/12/12 Javascript
JQuery.dataTables表格插件添加跳转到指定页
2017/06/09 jQuery
vue脚手架及vue-router基本使用
2018/04/09 Javascript
解决layer图标icon不加载的问题
2019/09/04 Javascript
js实现聊天对话框
2020/02/08 Javascript
[02:55]2018DOTA2国际邀请赛勇士令状不朽珍藏Ⅲ饰品一览
2018/08/01 DOTA
python多进程操作实例
2014/11/21 Python
更改Python命令行交互提示符的方法
2015/01/14 Python
Python读取MRI并显示为灰度图像实例代码
2018/01/03 Python
python pandas 如何替换某列的一个值
2018/06/09 Python
CentOS7安装Python3的教程详解
2019/04/10 Python
Python 实现取多维数组第n维的前几位
2019/11/26 Python
Pytorch1.5.1版本安装的方法步骤
2020/12/31 Python
使用HTML5技术开发一个属于自己的超酷颜色选择器
2013/09/22 HTML / CSS
伊芙丽官方旗舰店:中国淑女一线品牌
2017/12/01 全球购物
以色列的身体护理及家居香薰品牌:Sabon NYC
2018/02/23 全球购物
全球领先的中国制造商品在线批发平台:DHgate
2020/01/28 全球购物
Ibatis的核心配置文件都有什么
2014/09/08 面试题
What's the difference between an interface and abstract class? (接口与抽象类有什么区别)
2012/10/29 面试题
怎样在 Applet 中建立自己的菜单(MenuBar/Menu)?
2012/06/20 面试题
研究生自荐信
2013/10/09 职场文书
一年级语文教学反思
2014/02/13 职场文书
房屋买卖协议样本
2014/11/16 职场文书
校园广播稿范文
2015/08/19 职场文书
Python实现单例模式的5种方法
2021/06/15 Python