Thinkphp 3.2框架使用Redis的方法详解


Posted in PHP onOctober 24, 2019

本文实例讲述了Thinkphp 3.2框架使用Redis的方法。分享给大家供大家参考,具体如下:

(1)直接调用框架自带的Redis类:

路径:\ThinkPHP\Library\Think\Cache\Driver\Redis.class.php

public function test(){
    //创建一个redis对象
    $redis = new \Redis();
    //连接本地的 Redis 服务
    $redis->connect('127.0.0.1', 6379);
    //密码验证,如果没有可以不设置
    $redis->auth('123456');
    //查看服务是否运行
    echo "Server is running: " . $redis->ping();
    echo '<br/>';
    //设置缓存
    $redis->set('username','zhang san',3600);
    //获取缓存
    $user_name = $redis->get('username');
    var_dump($user_name);
  }

运行结果:

Server is running: +PONG
string(9) "zhang san"

(2)使用S方法:

在配置文件中添加配置

'DATA_CACHE_TYPE' => 'Redis',
'REDIS_HOST' => '127.0.0.1',
'REDIS_PORT' => 6379,

一、redis不设置密码的情况下:

public function set_info(){
    S('study','123');    
  }
  public function get_info(){
    echo C('DATA_CACHE_TYPE');
    echo '<br/>';
    $a = S('study');
    echo $a;
  }

先访问set_info,再访问get_info,返回结果:

Redis
123

二、redis设置密码的情况下:

直接使用S方法,结果报错:

NOAUTH Authentication required.

然后添加设置

'REDIS_AUTH' => 123456,

找到Redis类,发现没有设置密码,在Redis.class.php的__construct方法里添加代码:

Thinkphp 3.2框架使用Redis的方法详解

然后再测试S方法:

public function set_info(){
    $a = S('study','1223');
    var_dump($a);  //true
  }
  public function get_info(){
    echo C('DATA_CACHE_TYPE'); //Redis
    echo '<br/>';
    $a = S('study');
    echo $a; //1223
  }

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

PHP 相关文章推荐
第十节 抽象方法和抽象类 [10]
Oct 09 PHP
如何提高MYSQL数据库的查询统计速度 select 索引应用
Apr 11 PHP
PHP 日常开发小技巧
Sep 23 PHP
windows环境下php配置memcache的具体操作步骤
Jun 09 PHP
php判断字符串在另一个字符串位置的方法
Feb 27 PHP
PHP程序员基本要求和必备技能
May 09 PHP
thinkphp实现面包屑导航(当前位置)例子分享
May 10 PHP
怎样搭建PHP开发环境
Jul 28 PHP
PHP+Mysql+jQuery实现发布微博程序 php篇
Oct 15 PHP
php多线程实现方法及用法实例详解
Oct 26 PHP
Laravel框架实现抢红包功能示例
Oct 31 PHP
php的RSA加密解密算法原理与用法分析
Jan 23 PHP
laravel解决迁移文件一次删除创建字段报错的问题
Oct 24 #PHP
PHP Swoole异步读取、写入文件操作示例
Oct 24 #PHP
PHP Swoole异步Redis客户端实现方法示例
Oct 24 #PHP
Laravel自动生成UUID,从建表到使用详解
Oct 24 #PHP
Laravel使用模型实现like模糊查询的例子
Oct 24 #PHP
PHP 计算两个时间段之间交集的天数示例
Oct 24 #PHP
PHP Swoole异步MySQL客户端实现方法示例
Oct 24 #PHP
You might like
建立动态的WML站点(三)
2006/10/09 PHP
浅析Yii中使用RBAC的完全指南(用户角色权限控制)
2013/06/20 PHP
php实现Linux服务器木马排查及加固功能
2014/12/29 PHP
PHP随手笔记整理之PHP脚本和JAVA连接mysql数据库
2015/11/25 PHP
详解WordPress中用于合成数组的wp_parse_args()函数
2015/12/18 PHP
PHP版微信小店接口开发实例
2016/11/12 PHP
Zend Framework上传文件重命名的实现方法
2016/11/25 PHP
jQuery 全选效果实现代码
2009/03/23 Javascript
几个javascript操作word的参考代码
2009/10/26 Javascript
js 页面传参数时 参数值含特殊字符的问题
2009/12/13 Javascript
Extjs 继承Ext.data.Store不起作用原因分析及解决
2013/04/15 Javascript
js和css写一个可以自动隐藏的悬浮框
2014/03/05 Javascript
javascript自定义滚动条实现代码
2020/04/20 Javascript
超链接怎么正确调用javascript函数
2016/05/23 Javascript
大型JavaScript应用程序架构设计模式
2016/06/29 Javascript
web 前端常用组件之Layer弹出层组件
2016/09/22 Javascript
JavaScript之cookie技术详解
2016/11/18 Javascript
html判断当前页面是否在iframe中的实例
2016/11/30 Javascript
深入理解JS继承和原型链的问题
2016/12/17 Javascript
AngularJS下$http服务Post方法传递json参数的实例
2018/03/29 Javascript
微信小程序 拍照或从相册选取图片上传代码实例
2019/08/28 Javascript
解决在layer.open中使用时间控件laydate失败的问题
2019/09/11 Javascript
javascript设计模式 ? 原型模式原理与应用实例分析
2020/04/10 Javascript
JavaScript禁止右击保存图片,禁止拖拽图片的实现代码
2020/04/28 Javascript
JavaScript实现原型封装轮播图
2020/12/27 Javascript
[48:05]2018DOTA2亚洲邀请赛 3.31 小组赛 B组 VGJ.T vs VP
2018/03/31 DOTA
在Python 3中实现类型检查器的简单方法
2015/07/03 Python
python实现画圆功能
2018/01/25 Python
在Python 不同级目录之间模块的调用方法
2019/01/19 Python
解决Python中导入自己写的类,被划红线,但不影响执行的问题
2020/07/13 Python
Java中实现多态的机制是什么?
2014/12/07 面试题
怎样声明接口
2014/09/19 面试题
培训演讲稿范文
2014/01/12 职场文书
材料会计岗位职责
2014/03/06 职场文书
民政局办理协议离婚(范本)
2014/10/25 职场文书
MySQL示例讲解数据库约束以及表的设计
2022/06/16 MySQL