微信扫一扫打赏支持

thinkphp缓存使用

thinkphp缓存使用

一、总结

1、这里的缓存不是指的缓存的页面,而是cache,如果你缓存了一个数组,那么你就可以取出这个数组里面的数据进行使用,用法性质和cookie和session有点像

2、缓存的数据可以在thinkphp的runtime下的cache文件夹下面找到

3、用法:可以用Cache类也可以用助手函数,有设置cache,取出cache,删除cache,清空cache等几个常见操作

4、使用场景:我明白对不同用户如果看到的页面是一样的,而数据又是从数据库取得,那么久可以用cache来保存那份数据才减少频繁从数据库中取数据

5、疑惑一:如果数据是对不同用户看到的不一样,用cache怎么解决

6、疑惑二:或者cache存储的数据有变动(原数据被修改了),如果还是从cache中读取数据,那么读取的数据还是修改前的啊,这样就不对了

7、设置cache,直接是键值对的形式,也很好理解

8、取出cache,就是普通的直接取值啊,本质是数组类型的变量

9、删除cache,还是键值对的形式,和设置值一样,只不过值是空值NULL

10、清空cache,Cache类的clear()方法

11、使用cache,先判断有没有相应cache,有怎么操作,没有怎么操作

 

 

二、缓存

0、缓存简介

 

a) 缓存的作用:

 

减少数据库压力

用户交互比较

 

b) TP对缓存的支持

 

支持的缓存类型包括file、memcache、wincache、sqlite、redis和xcache。

 

c) 缓存设置(C:\AppServ\www\tp5\application\config.php)

 

'cache' => [

// 驱动方式

'type' => 'File',

// 缓存保存目录

'path' => CACHE_PATH,

// 缓存前缀

'prefix' => '',

// 缓存有效期 0表示永久缓存

'expire' => 0,

],

 

d) 使用

 

1、设置缓存

 

Cache::set(名字,值,时间);

cache(名字,值,时间);

 

# 返回值 如果设置成功 true

# 如果设置失败 false

 

 

2、读取缓存

 

Cache::get(名字);

cache(名字);

 

# 返回值 如果获取成功 获取到的数据

# 如果获取失败 false

 

3、删除缓存

 

Cache::rm('UserData');

cache('UserData',NULL);

 

# 返回值 删除成功 true

# 删除失败 false

 

4、清空缓存

 

Cache::clear();

 

# 返回值 清空缓存成功 true 否则 false

 

 

5、使用缓存

 

// 从缓存中获取数据

 

if ($data=cache('UserData')) {

 

// 如果数据存在

 

}else{

// 如果缓存中没有数据

$data=Db::table('User')->select();

 

cache('UserData',$data,20);

}

 

posted @ 2018-05-02 08:43  范仁义  阅读(1069)  评论(0编辑  收藏  举报