温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

怎么在YII框架中实现页面缓存

发布时间:2021-04-12 15:54:46 来源:亿速云 阅读:134 作者:Leah 栏目:开发技术

本篇文章为大家展示了怎么在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

$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框架中实现页面缓存,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI