从Boylee那抄过来的.链接中有boylee的博客地址. 我没有使用code插件,所以效果没有boy那的好,只是为了记录一下.如果需要复制代码之类的,请猛点此处
{Normal Cache}
01 //data cache
02 public function actionTestCache()
03 {
04 // print_r(Yii::app()->cache); //check the value
05 $cache = Yii::app()->cache;
06 $time = $cache->get('BoyLee001'); //get cache
07 if (false === $time){ //if cache is gone.
08 $cache->set('BoyLee001',time(),30); //set cache
09 // $cache['BoyLee001'] = $time(); //this is not right.
10 $time = $cache->get('BoyLee001');
11 }
12 echo $time;
13 }
{Fregment Cache}
01 //fregment cache
02 public function actionFregmentCache()
03 {
04 if ($this->beginCache('BoyLee002',
05 array('duration'=>60,
06 'dependency'=>array(
07 'class'=>'system.caching.dependencies.CDbCacheDependency',//you must have db set here
08 'sql'=>'SELECT COUNT(*) FROM `user`',//you must have db set here
09 ),
10 'varyByParam'=>array('id'),//cache by $_GET['id']
11 ))){
12 echo 'BoyLee'.time();
13 echo @$_GET['id'];
14 echo ' <hr /> ';
15 $this->endCache();
16 }
17 }
{PageCache}
{controller}
01 public function filters()
02 {
03 return array(
04 array('COutputCache + PageCache', 'duration'=>30,'varyByParam'=>array('id')),
05 );
06 }
07 public function actionPageCache()
08 {
09 $this->render('pageCache');
10 }
{view pageCache.php}
1 echo time();
2 echo ' <hr /> ';
3 echo @$_GET['id'];
{Boy Say}
It’s easy to use when you follow my code, just to be a bit change. I will update a post late for detail.
分享到:
相关推荐
本文主要给大家介绍的是关于Yii2.0如何使用页面缓存的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍。 起初使用页面缓存,发现使用于含有参数的方法存在弊端,只能缓存第一次的页面,导致后面所有...
手册还将涵盖Yii2的缓存机制,包括数据缓存和页面缓存,以及如何利用Yii2内置的缓存组件如FileCache、DbCache等提高应用性能。另外,Yii2的认证和授权管理也是重点,包括基于角色的访问控制(RBAC)、登录注册功能的...
视图文件中,YII框架使用$this->beginCache()和$this->endCache()方法来标记缓存的开始和结束。这两个方法间的内容将被缓存,具体控制包括: - 'duration':控制缓存的时间长度。 - 'dependency':定义缓存依赖,...
使用YII框架的Memcache非常简单,主要通过`yii::app()->cache`对象调用相关方法: 1. 存储数据: ```php $key = 'people'; $value = json_encode(array('name'=>'ball', 'age'=>'male')); $expire = 10; yii::app()-...
在本文中,我们将详细探讨Yii框架中的缓存用法,包括缓存的结构、原理、使用方法以及相关注意事项。 首先,Yii框架的缓存是通过组件方式定义的,位于/yii_dev/yii/framework/caching目录下。该目录包括了多种缓存...
以下是一个具体的示例代码,展示如何在YII应用中使用日志记录: ```php class DefaultController extends Controller { public function actionCache() { $category = 'system.testmod.defaultController'; $...
YII框架的这一特性对于需要频繁处理数据读取和更新的Web应用尤为重要,可以大幅减少不必要的数据传输,优化资源使用效率。通过深入学习YII框架的HTTP缓存操作,开发者可以更加高效地进行Web应用开发,从而更好地满足...
使用文件缓存时,数据被存储在文件中,Yii2已经定义了默认的存储路径@app\runtime\cache,但开发者可以根据需求自定义路径。示例配置如下: ```php 'components' => [ 'cache' => [ 'class' => 'yii\caching\File...
首先,为了在Yii2项目中使用PHPExcel,我们需要通过Composer来安装它。Composer是PHP的依赖管理工具,可以方便地添加和管理项目中的库。打开终端,进入项目根目录,然后执行以下命令: ```bash composer require ...
在Yii中,使用缓存主要通过`Yii::app()->cache`对象来实现。该对象实现了缓存接口,提供了各种缓存操作的方法。 1. 设置缓存:`set($key,$value,$outtime)`方法用于将数据存储到缓存中。其中`$key`是缓存的唯一...
在本教程中,我们将会介绍Yii框架的基础知识,以及如何使用Yii创建一个基本的应用。 首先,Yii框架中一个核心概念是CWebApplication类,它是所有Web应用程序的基础。在Yii中,通过调用Yii::app()方法可以访问应用...
上述代码定义了一个名为`cache`的组件,它使用`yii\caching\DbCache`类。当首次调用`Yii::$app->cache`时,如果尚未创建`cache`组件实例,Yii将自动创建一个并将其保存到一个内部容器中。之后对该组件的任何调用都将...
同样的,作为缓存使用,我们需要去配置文件里修改缓存项:如果你没有配置过redis组件,那么还需要在cache下配置redis:示例代码如下,通俗易懂也就不过多解