Yii2片段缓存详解

Posted 木子炜培先生

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Yii2片段缓存详解相关的知识,希望对你有一定的参考价值。

片段缓存

1 // ..../view/site/index.php页面
2 <?php 
3 if($this->beginCache(‘cache‘)) {
4     echo "<p class=‘cache‘>这里待会会被缓存</p>";
5     $this->endCache();
6 }
7 echo "<p class=‘no_cache‘>这里不会被缓存</p>";
8 ?>

 

 

 

 

 

 

 

 

 

 

 

片段缓存--过时间期

// ..../view/site/index.php页面 
<?php 
$duration = 15; // 设置过期秒数
if($this->beginCache(‘cache‘ , [‘duration‘ => $duration])) {
    echo "<p class=‘cache‘>这里待会会被缓存</p>";
    $this->endCache();
}
echo "<p class=‘no_cache‘>这里不会被缓存</p>";
?>

片段缓存--依赖dependency

// ..../view/site/index.php页面 
<?php 
$dependency = [ // 这里用文件依赖举例
    ‘class‘ => ‘\yii\caching\FileDependency‘,
    ‘fileName‘ => ‘robots.txt‘
];
if($this->beginCache(‘cache‘ , [‘dependency‘ => $dependency])) {
    echo "<p class=‘cache‘>这里待会会被缓存</p>";
    $this->endCache();
}
echo "<p class=‘no_cache‘>这里不会被缓存</p>";
?>

 循环嵌套片段缓存

// ..../view/site/index.php页面
<?php
if($this->beginCache(‘cache‘)) {
    // ...在此生成内容...
    if ($this->beginCache(‘cache‘)) {
        // ...在此生成内容...
        $this->endCache();
    }
    // ...在此生成内容...
    $this->endCache();
}
?>

 

以上是关于Yii2片段缓存详解的主要内容,如果未能解决你的问题,请参考以下文章

如何缓存片段视图

Android获取各个应用程序的缓存文件代码小片段(使用AIDL)

phalcon: 缓存片段,文件缓存,memcache缓存

详解Android WebView加载html片段

从 Apollo 缓存中读取特定类型的所有片段

在每个用户的Rails中使用片段缓存