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 相关文章推荐
令PHP初学者头疼十四条问题大总结
Nov 12 PHP
PHP 长文章分页函数 带使用方法,不会分割段落,翻页在底部
Oct 22 PHP
php和mysql中uft-8中文编码乱码的几种解决办法
Apr 19 PHP
PHP中mb_convert_encoding与iconv函数的深入解析
Jun 21 PHP
PHP中new static()与new self()的区别异同分析
Aug 22 PHP
php中fsockopen用法实例
Jan 05 PHP
PHP连接access数据库
Mar 27 PHP
必须收藏的23个php实用代码片段
Feb 02 PHP
php生成txt文件实例代码介绍
Apr 28 PHP
PHP Ajax实现无刷新附件上传
Aug 17 PHP
利用phpexcel对数据库数据的导入excel(excel筛选)、导出excel
Apr 27 PHP
PHP调用微博接口实现微博登录的方法示例
Sep 22 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
解决ajax+php中文乱码的方法详解
2013/06/09 PHP
JQuery操作单选按钮以及复选按钮示例
2013/09/23 Javascript
jQuery 无限级菜单的简单实例
2014/02/21 Javascript
jquery实现多行文字图片滚动效果示例代码
2014/10/10 Javascript
浅谈nodeName,nodeValue,nodeType,typeof 的区别
2015/01/13 Javascript
jquery实现用户打分评分特效
2015/05/28 Javascript
介绍JavaScript的一个微型模版
2015/06/24 Javascript
jQuery操作Table技巧大汇总
2016/01/23 Javascript
javascript宿主对象之window.navigator详解
2016/09/07 Javascript
微信小程序购物商城系统开发系列-目录结构介绍
2016/11/21 Javascript
Vue.js 插件开发详解
2017/03/29 Javascript
JS中定位 position 的使用实例代码
2017/08/06 Javascript
你可能不知道的前端算法之文字避让(inMap)
2018/01/12 Javascript
详解nodeJs文件系统(fs)与流(stream)
2018/01/24 NodeJs
vue-cli3项目展示本地Markdown文件的方法
2019/06/07 Javascript
解决vue打包后vendor.js文件过大问题
2019/07/03 Javascript
24个解决实际问题的ES6代码片段(小结)
2020/02/02 Javascript
js回调函数原理与用法案例分析
2020/03/04 Javascript
[00:34]TI7不朽珍藏III——地穴编织者不朽展示
2017/07/15 DOTA
[49:31]TFT vs Mski Supermajor小组赛C组 BO3 第一场 6.3
2018/06/04 DOTA
[42:06]2019国际邀请赛全明星赛 8.23
2019/09/05 DOTA
[35:55]完美世界DOTA2联赛PWL S3 Rebirth vs CPG 第一场 12.11
2020/12/13 DOTA
详解常用查找数据结构及算法(Python实现)
2016/12/09 Python
python安装pywin32clipboard的操作方法
2019/01/24 Python
学习Django知识点分享
2019/09/11 Python
在Django中实现添加user到group并查看
2019/11/18 Python
VScode连接远程服务器上的jupyter notebook的实现
2020/04/23 Python
html5指南-6.如何创建离线web应用程序实现离线访问
2013/01/07 HTML / CSS
canvas仿写贝塞尔曲线的示例代码
2017/12/29 HTML / CSS
HTML5中的websocket实现直播功能
2018/05/21 HTML / CSS
东南亚旅游平台:The Trip Guru
2018/01/01 全球购物
广告学专业应届生求职信
2013/10/01 职场文书
2014年学校领导班子对照检查材料
2014/09/19 职场文书
2015年信息中心工作总结
2015/05/25 职场文书
500字作文之难忘的同学
2019/12/20 职场文书
Spring Boot 实现敏感词及特殊字符过滤处理
2021/06/29 Java/Android