ThinkPHP3.2框架操作Redis的方法分析

本文实例讲述了ThinkPHP3.2框架操作Redis的方法。分享给大家供大家参考,具体如下:

原本感觉 Redis 应该像是作为数据库的一种被拿来操作的,可是实际上 thinkphp 3.2 是把 redis 作为缓存的一种方式来进行解析的,从 redis 文件被存放的位置就可以看出来:

\ThinkPHP \Library \Think \Cache \Driver

是作为 Cache,缓存方式的一种被拿来使用的,可是经过我们前面的学习,我们发现 Redis 不光光能做这些。

还有一个发现是这样的,假设我在 thinkphp 的控制器中执行如下代码:

<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
  public function index() {
   // 配置 redis 缓存
   $set = array(
   'type' =>'redis' ,
   'host'=>'127.0.0.1' ,
   'port'=>6379,
   );
   // 实例化
   $redis=S($set);
   // 存储数据
   $redis->name="hello world again";
   $redis->id=1;
  }
}

之后我们到 redis-cli.exe 中查看以下存储的结果:

ThinkPHP3.2框架操作Redis的方法分析

接下来换种方式存储:

<?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
  public function index() {
   // 配置 redis 缓存
   $set = array(
   'type' =>'redis' ,
   'host'=>'127.0.0.1' ,
   'port'=>6379,
   );
   // 设置要存储的数据
   $message = array(
   'name' =>'yang' ,
   'id'=>1
    );
   // 缓存
   S('message',$message,$set);
  }
}

再来查看缓存结果:

ThinkPHP3.2框架操作Redis的方法分析

从上述实验我们可以得出结论,thinkphp 官方给出的源码中只是把 redis 作为一个缓存的工具,如果我们需要实现更加丰富的操作的话,就需要自己封装类了。

看来又要去看 PHP 操作 Redis 了。官方不会像封装 MySql 一样给我封装好啊,直接拿来用多好。

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

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

相关推荐