程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> Yii數據庫緩存實例分析

Yii數據庫緩存實例分析

編輯:PHP綜合

本文實例講述了Yii數據庫緩存用法。分享給大家供大家參考,具體如下:

yii  操作數據庫緩存:

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

'dbcache'=>array(
  'class'=>'system.caching.CDbCache',
  //數據庫緩存,注意你自己的路徑問題
),

2、設置數據庫緩存

Yii::app()->cache->set($key,$value,$outtime);
//$key 唯一主鍵,$value 對應主鍵的值(可以是數組), $outtime 過期時間。

3、獲取緩存

Yii::app()->cache->get($key);
//設置數據庫緩存時的主鍵key

4、刪除緩存

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

5、清空緩存文件

Yii::app()->cache->fulsh();
//將刪除服務器上面的所有文件緩存,即cache文件夾裡面的所有緩存文件

應用實例:(好多視頻沒有給出在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;
}
..........

我這裡省略掉了其他的判定條件,當前僅需要判定的信息有$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);//這裡的第一個參數需要和上面的對應,第二個參數就是你的數據 , 第三個參數就是過期時間。

更多關於Yii相關內容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結》、《php優秀開發框架總結》、《smarty模板入門基礎教程》、《php日期與時間用法總結》、《php面向對象程序設計入門教程》、《php字符串(string)用法總結》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》

希望本文所述對大家基於Yii框架的PHP程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved