当前位置:首页 > CMS教程 > 其它CMS > 列表

YII框架页面缓存操作示例

发布:smiling 来源: PHP粉丝网  添加日期:2021-11-20 19:57:33 浏览: 评论:0 

这篇文章主要介绍了YII框架页面缓存操作,结合实例形式分析了Yii框架页面缓存的开启、关闭、设置等相关功能与实现技巧,需要的朋友可以参考下。

本文实例讲述了YII框架页面缓存操作,分享给大家供大家参考,具体如下:

IndexController.php

  1. namespace frontend\controllers; 
  2. use yii; 
  3. use yii\web\Controller; 
  4. class IndexController extends Controller 
  5.   public function behaviors()//先于action执行,可以用来实现页面缓存 
  6.   { 
  7.     return [ 
  8.      [ 
  9.        'class'=>'yii\filters\PageCache',//整个页面缓存 
  10.        'duration'=>10,//缓存时间 
  11.        'only'=>['cache'],//只有index操作会被缓存,即使没有视图展示也会缓存 
  12.        'dependency'=>[ 
  13.          'class'=>'yii\caching\DbDependency'
  14.          'sql'=>'select count(*) from user'
  15.        ], 
  16.      ] 
  17.     ]; 
  18.   } 
  19.   public function actionCache(){ 
  20.     //片段缓存 
  21.     return $this->renderPartial("index"); 
  22.   } 

views/index/index.php

  1. <?php 
  2. /** 
  3.  * Created by PhpStorm. 
  4.  * Date: 2016/5/25 
  5.  * Time: 19:37 
  6.  */ 
  7. $duration = 15; 
  8. //缓存依赖 
  9.   $dependency = [ 
  10.     'class'=>'yii\caching\FileDependency'
  11.     'fileName'=>'hw.txt',//web目录下 
  12.   ]; 
  13. //缓存的开关 
  14. $enabled = false; 
  15. ?> 
  16. <?php 
  17.   //if($this->beginCache('cache_div',['duration' => $duration])){ 
  18.   //if($this->beginCache('cache_div',['enabled' => $enabled])){ 
  19.   if($this->beginCache('cache_div',['dependency' => $dependency])){?> 
  20.     <div id="cache_div"
  21.       <div>这里待会会被缓存 哈哈</div> 
  22.     </div> 
  23. <?php 
  24.   $this->endCache(); 
  25. }?> 
  26. <div id="no_cache_div"
  27.   <div>这里不会被缓存 噜</div> 
  28. </div>

Tags: YII框架页面缓存

分享到: