Yii 2.0 权威指南

页面缓存

页面缓存指的是在服务器端缓存整个页面的内容。随后当同一个页面被请求时,内容将从缓存中取出,而不是重新生成。

页面缓存由 yii\filters\PageCache 类提供支持,该类是一个过滤器。它可以像这样在控制器类中使用:

public function behaviors() {     
	return [     
	    [     
	     
	   'class' =>
	'yii\filters\PageCache',     
	     
	   'only' =>
	['index'],     
	     
	   'duration' =>
	60,     
	     
	   'variations' =>
	[     
	     
	     
	  \Yii::$app->language,     
	     
	   ],     
	     
	   'dependency' =>
	[     
	     
	     
	  'class' =>
	'yii\caching\DbDependency',     
	     
	     
	  'sql' =>
	'SELECT COUNT(*) FROM post',     
	     
	   ],     
	    ],     
	]; } 

上述代码表示页面缓存只在 index 操作时启用,页面内容最多被缓存 60 秒,会随着当前应用的语言更改而变化。如果文章总数发生变化则缓存的页面会失效。

如你所见,页面缓存和片段缓存极其相似。它们都支持 duration,dependencies,variations 和 enabled 配置选项。它们的主要区别是页面缓存是由过滤器实现,而片段缓存则是一个小部件

你可以在使用页面缓存的同时,使用片段缓存动态内容

版权及转载说明

本站原创、转载文章欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区

本站转载文章版权归原作者所有,如发现本站文章涉嫌侵权请点击「联系我们」反馈,本站将给予删除

本教程数据来源「http://www.yiichina.com/doc/guide/2.0」