浅析Yii2缓存的使用


Posted in PHP onMay 10, 2016

一个好的框架是肯定离不开缓存的使用,相反,一个没有缓存的框架也肯定不是一个好框架,好像是一个意思,不管了,我们先来看看yii2中是如何使用缓存的吧。

又是到我们第一步操作的时候了,我们先来配置组件。

方便起见,我们的缓存组件配置在common\config\main.php文件,先来简单配置下文件缓存

'components' => [ 
'cache' => [ 
'class' => 'yii\caching\FileCache', 
'cachePath' => '@runtime/cache2', 
], 
],

所谓的文件缓存,其实就是把我们要缓存的数据存放到文件内,那数据又缓存到哪里了呢?

//默认的缓存路径是@app\runtime\cache目录下,如果你想要修改缓存路径,可以像上面配置一样,配置下cachePath即可

我们直接来操作看看

$cache = Yii::$app->cache; 
$data = $cache->get('cache_data_key'); 
if ($data === false) { 
//这里我们可以操作数据库获取数据,然后通过$cache->set方法进行缓存 
$cacheData = ...... 
//set方法的第一个参数是我们的数据对应的key值,方便我们获取到 
//第二个参数即是我们要缓存的数据 
//第三个参数是缓存时间,如果是0,意味着永久缓存。默认是0 
$cache->set('cache_data_key', $cacheData, 60*60); 
} 
var_dump($data);

以上内容是小编给大家介绍的Yii2缓存的使用方法,大家可以参考下。

下面给大家介绍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()->cache->get('testcache');

删除单个Cache:

Yii::app()->cache->delete('testcache');

清空全部Cache:

Yii::app()->cache->flush();
PHP 相关文章推荐
PHP 组件化编程技巧
Jun 06 PHP
基于curl数据采集之正则处理函数get_matches的使用
Apr 28 PHP
基于Discuz security.inc.php代码的深入分析
Jun 03 PHP
PHP操作MongoDB GridFS 存储文件的详解
Jun 20 PHP
PHP上传文件时文件过大$_FILES为空的解决方法
Nov 26 PHP
php循环创建目录示例分享(php创建多级目录)
Mar 04 PHP
php中file_get_contents与curl性能比较分析
Nov 08 PHP
php使用cookie保存登录用户名的方法
Jan 26 PHP
Thinkphp关闭缓存的方法
Jun 26 PHP
Symfony2开发之控制器用法实例分析
Feb 05 PHP
如何解决PHP使用mysql_query查询超大结果集超内存问题
Mar 14 PHP
PHP实现普通hash分布式算法简单示例
Aug 06 PHP
php简单统计在线人数的方法
May 10 #PHP
使用php实现从身份证中提取生日
May 09 #PHP
PHP使用内置函数生成图片的方法详解
May 09 #PHP
php时间计算相关问题小结
May 09 #PHP
php数据访问之查询关键字
May 09 #PHP
php简单实现短网址(短链)还原的方法(测试可用)
May 09 #PHP
php数据访问之增删改查操作
May 09 #PHP
You might like
discuz 首页四格:最新话题+最新回复+热门话题+精华文章插件
2007/08/19 PHP
php 代码优化的42条建议 推荐
2009/09/25 PHP
hadoop常见错误以及处理方法详解
2013/06/19 PHP
利用PHP实现短域名互转
2013/07/05 PHP
PHP使用 Imagick 扩展实现图片合成,圆角处理功能示例
2019/09/09 PHP
文本框中禁止非数字字符输入比如手机号码、邮编
2013/08/19 Javascript
javascript实用小函数使用介绍
2013/11/11 Javascript
js实现飞入星星特效代码
2014/10/17 Javascript
jQuery实现浮动层随浏览器滚动条滚动的方法
2015/09/22 Javascript
jQuery中text() val()和html()的区别实例详解
2016/06/28 Javascript
JS控制静态页面之间传递参数获取参数并应用的简单实例
2016/08/10 Javascript
js中json处理总结之JSON.parse
2016/10/14 Javascript
利用JavaScript在网页实现八数码启发式A*算法动画效果
2017/04/16 Javascript
使用Xcache缓存器加速PHP网站的配置方法
2017/04/22 Javascript
React Native基础入门之初步使用Flexbox布局
2018/07/02 Javascript
vue 下列表侧滑操作实例代码详解
2018/07/24 Javascript
解决Vue.js由于延时显示了{{message}}引用界面的问题
2018/08/25 Javascript
ant-design-vue中tree增删改的操作方法
2020/11/03 Javascript
vue实现登录功能
2020/12/31 Vue.js
js实现简单的倒计时
2021/01/28 Javascript
Python的Django框架中的select_related函数对QuerySet 查询的优化
2015/04/01 Python
Python学习小技巧之列表项的排序
2017/05/20 Python
python3.6利用pyinstall打包py为exe的操作实例
2018/10/31 Python
Python模块的加载讲解
2019/01/15 Python
基于Python实现船舶的MMSI的获取(推荐)
2019/10/21 Python
python传到前端的数据,双引号被转义的问题
2020/04/03 Python
python同时遍历两个list用法说明
2020/05/02 Python
python sleep和wait对比总结
2021/02/03 Python
Ellos瑞典官网:北欧地区时尚、美容和住宅领域领先的电子商务网站
2019/11/21 全球购物
中学生在校期间的自我评价分享
2013/11/13 职场文书
培训自我鉴定
2014/01/31 职场文书
研究生考核个人自我鉴定
2014/03/27 职场文书
房产公证书范本
2014/04/10 职场文书
学校运动会通讯稿
2015/07/18 职场文书
MySQL 常见存储引擎的优劣
2021/06/02 MySQL
PHP 时间处理类Carbon
2022/05/20 PHP