yii使用之缓存

1、片段缓存(针对于视图中的某部分进行缓存);

 1 <?php
 2 设置有效时间
 3 $time=15;
 4 缓存依赖,存入文件。当文件内容发生改变是才会刷新新内容
 5 $dependecy=[
 6 ‘class‘=>‘yii\caching\FileDependency‘,
 7 ‘fileName‘=>‘xxx.txt‘
 8 ];
 9 设置是否开启缓存
10 $enable=false/ture
11
12 ?>
13 <?php if( $this->beginCache(‘缓存名‘,[‘duration‘=>$time,‘dependecy‘=>$dependecy,‘enable‘=>$enable]) ){ ?>14
15 ****缓存的内容
16 内容将被缓存,再次访问时。直接读取缓存*****
17
18 <?php
19 $this->endCache();
20 }
21 ?>

注意:当使用嵌套是就得注意内外内容的缓存时间了。有时候会出现内缓存已经过期了,但还是读的缓存文件,可能是你的外缓存还存在

2、页面缓存(在控制器中)

behaviors()该方法会在所有的方法执行前执行,当然你也可以用它来做一些手脚。比如做防非法操作,就可以在return前调一个判断是否登录的方法来控制你不登录就不能操作
 1 public function behaviors()
 2 {
 3 return [
 4 [
 5 ‘class‘=>‘yii\filters\PageCache‘,
 6 ‘duration‘=>1000,       //缓存的时间
 7 ‘only’=>[‘index‘,],    //对那个操作进行缓存
 8 ‘dependency‘=[
 9 ‘class‘=>‘yii\caching\FileDependency‘,
10 ‘fileName‘=>‘xxx.txt‘  //缓存的文件名
11 ];
12
13 ]
14 ];
15 }

缓存就差不多是这些了,希望有帮助吧

时间: 2024-10-29 19:07:13

yii使用之缓存的相关文章

Yii框架分布式缓存的实现方案

声明:本文阅读对象最好是对Yii和分布式缓存有一定了解的人群,否则理解和掌握上有一些困难,建议阅读之前做好以上两点基础准备. YiiFramework简称Yii,读作易,代表简单(easy).高效(efficient).可扩展(extensible),Yii将面向对象思想以及代码的重用性发挥到了极致,尤其是在缓存的支持上,Yii是最有效率的PHP框架之一. Yii的缓存支持封装在框架核心的caching文件夹下面,如下图是Yii支持的缓存存储介质. 如果要做跨Session和请求的分布式缓存,可

YII框架——数据缓存

YII框架——数据缓存 YII缓存的配置: YII目录/config/web.php文件,配置cache数组下,class数组的值,默认为yii\caching\FileCache. 2.缓存的使用:获取缓存组件: $cache=\YII::$app->cache; 添加缓存数据: $cach->add(key,value[,time][,dependency]); 参数: Key 键   Value 值   Time 可选,缓存有效期   Dependency 可选,依赖方式 返回值:  

YII框架——页面缓存

首先,要知道页面缓存是在什么时候使用的.一般是在所有操作之前缓存文件. yii中有个behaviors()方法,在控制器的所有方法之前执行.所以一般在这个方法中缓存页面. public function behaviors() { return[ [ 'class'=>'yii\filters\PageCache', 'duration'=>1000, 'dependency'=>[ 'class'=>'yii\caching\FileDependency', 'fileName'

YII 1.0 缓存使用

在main.php的组件components中配置设置添加缓存 'cache'=>array( 'class' => 'system.caching.CFileCache' ), 也就是framework/caching/CFileCache.php 片段缓存 在模板中使用 <?php if($this->beginCache('bolg_index',array('duration'=>3600))): ?> . . . <?php $this->endC

YII框架——片段缓存

顾名思义,片段缓存就是缓存网页中的片段内容. 一般用于缓存固定不变的内容,从而减少了从数据库中获取的时间操作. 1.启用片段缓存,将以beginCache('id');开头,以结尾. 例: <?php $this->begianCache('cachediv');?> <div id='cachediv'> 这里是缓存片段,如果片段内容被修改,页面依然显示缓存的内容,而不是修改后的内容. </div> <?php $this->endCache();?

Yii设置Cache缓存的方法

先在配置文件components数组中加上: 'cache'=>array( 'class'=>'CFileCache'), 设置Cache: Yii::app()->cache->set('testcache', array(1,3,4,6));//默认有效期为一年 Yii::app()->cache->set('testcache', array(1,3,4,6), 3600);//一个钟,秒为单位 获取Cache: $data = Yii::app()->c

Yii的缓存机制之数据缓存

具体说法就是可以缓存变量信息. 设置:Yii::app()->cache->set(名字, 值, 过期时间): 使用:Yii::app()->cache->get(名字); 删除:Yii::app()->cache->delete(名字); 清空:Yii:app()->cache->flush(); 缓存数据的应用: 用来缓存数据:可以在数据模型里自定义一个方法,来获取自己想要的数据然后进行缓存 例如获取商品的详细信息时,在Goods模型了里自定义一个获取商

YII缓存整理

缓存 缓存是用于提升网站性能的一种即简单又有效的途径.通过存储相对静态的数据至缓存以备所需,我们可以省去生成这些数据的时间.在 Yii 中使用缓存主要包括配置和访问缓存组件 . 如下的应用配置指定了一个使用两台缓存服务器的 memcache 缓存组件: [plain] view plaincopyprint? array( ...... 'components'=>array( ...... 'cache'=>array( 'class'=>'system.caching.CMemCac

yii框架缓存知识总结(转载)

缓存是用于提升网站性能的一种即简单又有效的途径.稍微有点规模的网站都会通过存储相对静态的数据至缓存以备所需,这样我们可以省去从数据库查询然后生成这些数据的时间,通过减轻数据库的压力从而提升网站的性能. Yii作为一个强大的php开源框架,再缓存这块,YII对各种流行的缓存都提供了接口,我们可以根据实际的需要使用不同的缓存. yii的缓存相关组件存放在yii/framework/caching的目录内,通过查看该目录,我们可以知道yii所支持的都有哪些缓存.下面我们对相关文件做一些简单的介绍: C