欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

YII框架页面缓存操作示例

程序员文章站 2022-04-28 17:28:57
本文实例讲述了yii框架页面缓存操作。分享给大家供大家参考,具体如下: indexcontroller.php namespace frontend\contr...

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

indexcontroller.php

namespace frontend\controllers;
use yii;
use yii\web\controller;
class indexcontroller extends controller
{
  public function behaviors()//先于action执行,可以用来实现页面缓存
  {
    return [
     [
       'class'=>'yii\filters\pagecache',//整个页面缓存
       'duration'=>10,//缓存时间
       'only'=>['cache'],//只有index操作会被缓存,即使没有视图展示也会缓存
       'dependency'=>[
         'class'=>'yii\caching\dbdependency',
         'sql'=>'select count(*) from user',
       ],
     ]
    ];
  }
  public function actioncache(){
    //片段缓存
    return $this->renderpartial("index");
  }
}

views/index/index.php

<?php
/**
 * created by phpstorm.
 * date: 2016/5/25
 * time: 19:37
 */
$duration = 15;
//缓存依赖
  $dependency = [
    'class'=>'yii\caching\filedependency',
    'filename'=>'hw.txt',//web目录下
  ];
//缓存的开关
$enabled = false;
?>
<?php
  //if($this->begincache('cache_div',['duration' => $duration])){
  //if($this->begincache('cache_div',['enabled' => $enabled])){
  if($this->begincache('cache_div',['dependency' => $dependency])){?>
    <div id="cache_div">
      <div>这里待会会被缓存 哈哈</div>
    </div>
<?php
  $this->endcache();
}?>
<div id="no_cache_div">
  <div>这里不会被缓存 噜</div>
</div>

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

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