Yii数据库缓存实例分析_php实例

WBOY
Release: 2016-06-07 17:08:14
Original
771 people have browsed it

本文实例讲述了Yii数据库缓存用法。分享给大家供大家参考,具体如下:

yii 操作数据库缓存:

1、在main.php主文件中添加

'dbcache'=>array( 'class'=>'system.caching.CDbCache', //数据库缓存,注意你自己的路径问题 ),
Copy after login

2、设置数据库缓存

Yii::app()->cache->set($key,$value,$outtime); //$key 唯一主键,$value 对应主键的值(可以是数组), $outtime 过期时间。
Copy after login

3、获取缓存

Yii::app()->cache->get($key); //设置数据库缓存时的主键key
Copy after login

4、删除缓存

Yii::app()->cache->delete($key);//同上
Copy after login

5、清空缓存文件

Yii::app()->cache->fulsh(); //将删除服务器上面的所有文件缓存,即cache文件夹里面的所有缓存文件
Copy after login

应用实例:(好多视频没有给出在list列表页如果做缓存,列表页需要有page信息,稍微复杂一点,下面给出一个list页面的数据库缓存实例)

当前一个url地址:http://www.aaaa.com/news/list/gid/2/nid/3/page/1.html

先判定缓存是否存在:

if(isset($_GET['gid'])){ $gid = intval($_GET['gid']); }else{ $gid = 1; } ..........
Copy after login

我这里省略掉了其他的判定条件,当前仅需要判定的信息有$gid,$nid,$pages(注意,当前变量没有用$page而是使用的$pages,因为如果使用$page会出错误,和分页中的$page相冲突)

$newsListCache = Yii::app()->cache->get("newsList$gid$nid$pages"); //可以保证其唯一性即可 if(!empty($newsListCache))//判定如果有这个文件则走这个文件 下面return 了所以后面的数据就不会再走了 return $newsListCache; 。。。。。//这里就是你的其他代码数据,不用管它 Yii::app()->cache->set("newsList$gid$nid$pages",$newsList,3600);//这里的第一个参数需要和上面的对应,第二个参数就是你的数据 , 第三个参数就是过期时间。
Copy after login

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

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

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!