ThinkPHP 3.2 操作 Redis
2016-09-22 10:22
441 查看
原本感觉 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 中查看以下存储的结果:
![](https://img-blog.csdn.net/20160922101232367?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
接下来换种方式存储:
<?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);
}
}再来查看缓存结果:
![](https://img-blog.csdn.net/20160922101736457?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
从上述实验我们可以得出结论,thinkphp 官方给出的源码中只是把 redis 作为一个缓存的工具,如果我们需要实现更加丰富的操作的话,就需要自己封装类了。
看来又要去看 PHP 操作 Redis 了。
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/despise.gif)
官方不会像封装 MySql 一样给我封装好啊,直接拿来用多好。
\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 中查看以下存储的结果:
接下来换种方式存储:
<?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);
}
}再来查看缓存结果:
从上述实验我们可以得出结论,thinkphp 官方给出的源码中只是把 redis 作为一个缓存的工具,如果我们需要实现更加丰富的操作的话,就需要自己封装类了。
看来又要去看 PHP 操作 Redis 了。
![](http://static.blog.csdn.net/xheditor/xheditor_emot/default/despise.gif)
官方不会像封装 MySql 一样给我封装好啊,直接拿来用多好。
相关文章推荐
- thinkPHP3.2的基本操作
- 使用ThinkPHP扩展,实现Redis的CURD操作。
- 关于ThinkPHP3.2中连贯操作where的说明
- thinkphp3.2开发排错一例——当输入数据长度超过表里设置的长度后,提示操作失败,没有提示超过长度
- thinkphp3.2 中用S方法实现 用户定时操作
- Thinkphp3.2的redis配置文件
- 使用ThinkPHP扩展,实现Redis的CURD操作。
- 使用ThinkPHP扩展,实现Redis的CURD操作。
- thinkphp 3.2中独立的redis快捷函数 模仿 S() 函数
- thinkphp 3.2 page分页修改路由影响js操作
- mac环境下安装Redis及thinkphp3.2/thinkphp5中redis的使用
- ThinkPHP3.2对MongoDB的基本操作
- thinkphp 3.2里面session的redis驱动文件(可分布式)
- ThinkPHP扩展,实现Redis的CURD操作。
- TP5 Thinkphp5.0 操作redis
- 一个最简的Thinkphp3.2 操作Mongodb的例子
- thinkphp3.2 session存到redis的方法
- thinkPHP3.2 记录后台管理员的操作日志
- ThinkPHP3.2 + PHPExcel 进行execl文件导出操作
- 使用ThinkPHP扩展,实现Redis的CURD操作。