主頁 > 知識庫 > Yii框架常見緩存應(yīng)用實例小結(jié)

Yii框架常見緩存應(yīng)用實例小結(jié)

熱門標(biāo)簽:仁和怎么申請400開頭的電話 江西手機自動外呼防封系統(tǒng)是什么 高德地圖標(biāo)注家 長春人工外呼系統(tǒng)服務(wù)商 外呼系統(tǒng)撥打暫時無法接通 怎么向銷售公司推銷外呼系統(tǒng) 廣東地市地圖標(biāo)注 廣州防封卡外呼系統(tǒng)多少錢一個月 哪里辦理400電話

本文實例講述了Yii框架常見緩存應(yīng)用。分享給大家供大家參考,具體如下:

1 首先,你需要安裝apc or memcache or redis 。 安裝完后。 以redis 為例。 至于如何安裝,多找度娘。

在配置文件中components 添加如下。

'cache'=>array(
  'class'=>'core.extensions.redis.Predis',
     'class'=>'core.extensions.redis.CRedisCache',
     'servers'=>array(
      array(
        'host'=>'192.168.1.xx',
        'port'=>6379,
       ),
      ),
    ),

2 最簡單的例子。 set get.

Yii::app()->cache->set('id', date("Y-m-d H:i:s"), 5); //設(shè)置有效時間為5.
echo Yii::app()->cache->get("id")."br/>";
sleep(2);
echo Yii::app()->cache->get("id"); //緩存有效期內(nèi) 會輸出數(shù)據(jù)
sleep(4);
echo Yii::app()->cache->get("id"); //緩存失效,輸出為空

3 數(shù)據(jù)庫查詢緩存。

//3.1 最簡單的數(shù)據(jù)庫緩存。
$sql = 'select * from {{settings}}';
$cmd = Yii::app()->db->cache(10, null)->createCommand($sql);
$rows = $cmd->queryAll();
//3.2 加一個緩存依賴的概念。
$dp_sql = "SELECT MAX(id) FROM plat2_settings ";
$dependency = new CDbCacheDependency( $dp_sql );
$sql  = "SELECT * FROM `plat2_settings`";
$rows = Yii::app()->db->cache(1000, $dependency)->createCommand($sql)->queryAll();

上面的代碼意思是查詢對應(yīng)的數(shù)據(jù)的時候,會先判斷依賴查詢 SELECT MAX(id) FROM plat2_settings 的結(jié)果數(shù)據(jù)是否有更新,

如果有更新,則重新查詢數(shù)據(jù),如依賴未更新則直接調(diào)緩存數(shù)據(jù)。 過1000 秒后,會重新查詢。

4 片斷緩存。

if($this->beginCache("xx"))
{
  echo "test cache ";
  $this->endCache();
}
//beginCache 會存在第二個參數(shù),意思是選用指定的緩存器。如果需要使用不同的緩存時,可以定制。

5 頁面緩存。

public function filters(){
  return array(
    array(
      'COutputCache+index+admin',
      'duration' => 120,
      'varyByParam'=>array('id'),
    ),
  );
}

使用控制器,直接對指定的action 進行緩存處理 。

還有varyBySession 可以選配。

更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結(jié)》、《php優(yōu)秀開發(fā)框架總結(jié)》、《smarty模板入門基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》

希望本文所述對大家基于Yii框架的PHP程序設(shè)計有所幫助。

您可能感興趣的文章:
  • 從零開始學(xué)YII2框架(六)高級應(yīng)用程序模板
  • yii2高級應(yīng)用之自定義組件實現(xiàn)全局使用圖片上傳功能的方法
  • YII Framework框架使用YIIC快速創(chuàng)建YII應(yīng)用之migrate用法實例詳解
  • YII Framework框架教程之使用YIIC快速創(chuàng)建YII應(yīng)用詳解
  • Yii2框架redis基本應(yīng)用示例
  • Yii框架學(xué)習(xí)筆記之應(yīng)用組件操作示例
  • Yii Framework框架中事件和行為的區(qū)別及應(yīng)用實例分析
  • 再談Yii Framework框架中的事件event原理與應(yīng)用
  • Yii框架應(yīng)用組件用法實例分析
  • Yii 框架應(yīng)用(Applications)操作實例詳解

標(biāo)簽:海北 黔東 湘西 濮陽 梅河口 文山 惠州 廈門

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Yii框架常見緩存應(yīng)用實例小結(jié)》,本文關(guān)鍵詞  Yii,框架,常見,緩存,應(yīng)用,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Yii框架常見緩存應(yīng)用實例小結(jié)》相關(guān)的同類信息!
  • 本頁收集關(guān)于Yii框架常見緩存應(yīng)用實例小結(jié)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章