浅析Yii2缓存的使用

一个好的框架是肯定离不开缓存的使用,相反,一个没有缓存的框架也肯定不是一个好框架,好像是一个意思,不管了,我们先来看看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();
(0)

相关推荐

  • Yii框架中memcache用法实例

    本文实例讲述了Yii框架中memcache用法.分享给大家供大家参考.具体分析如下: 在现在的公司用的是YII的框架,接触到的东西也比较多,可以学到的东西也比较多,在以前的公司没有接触过memcache,只是听过,但是从来没有真正用过.现在终于有机会使用一下了,就以我做的项目为例吧! 我做的项目是一个手机排行榜,但是排行榜每隔15分钟刷新一次啊,排行榜有一个前三名,可能前15分钟这三个人是前三名,也许下一个15分钟又是别人前三名了,产品要求,这些人中只要是前三名的都要发奖品,思考了好久,最终决定

  • yii2缓存Caching基本用法示例

    本文实例讲述了yii2缓存Caching基本用法.分享给大家供大家参考,具体如下: 在yii的配置文件中添加: 'cache' => [ 'class' => 'yii\caching\ApcCache', ], 缓存的使用: <?php $key = 'cacheKey'; //读取缓存 $data = Yii::$app->cache->get($key); //判断缓存是否存在,如果不存就生成缓存 if ($data === false) { $cache->se

  • Yii开启片段缓存的方法

    本文实例讲述了Yii开启片段缓存的方法.分享给大家供大家参考,具体如下: 1.main.php文件中的components中添加: cache'=>array( 'class'=>'system.caching.CFileCache', ), 2.在view中哪里需要缓存就添加这句话 <?php if($this->beginCache('aaa', array( 'duration'=>3360, 'varyByParam'=>array('page'), 'depe

  • Yii2 assets清除缓存的方法

    本文实例讲述了Yii2 assets清除缓存的方法.分享给大家供大家参考,具体如下: use vendor\myVendorName\myPackageName\assets\AppAsset; AppAsset::register($this); 在配置文件中添加: 'components' => [ 'assetManager' => [ 'linkAssets' => true, ], ] 刷新后就可以清除缓存 更多关于Yii相关内容感兴趣的读者可查看本站专题:<Yii框架入

  • YII框架中使用memcache的方法详解

    本文实例讲述了YII框架中使用memcache的方法.分享给大家供大家参考,具体如下: yii中可以很方便的使用memcache 一.配置 在main.php的components中加入cache配置 array( 'components'=>array( 'cache'=>array( 'class'=>'CMemCache', 'servers'=>array( array( 'host'=>'server1', 'port'=>11211, 'weight'=&g

  • Yii清理缓存的方法

    本文实例讲述了Yii清理缓存的方法.分享给大家供大家参考,具体如下: html: 复制代码 代码如下: <button onclick="clearCache()">ClearCache</button> js: function clearCache() { $.get('../eng/index.php?r=site/clear&'+new Date().getTime(),function(){ alert('Clear eng cache ok.

  • Yii配置与使用memcached缓存的方法

    本文实例讲述了Yii配置与使用memcached缓存的方法.分享给大家供大家参考,具体如下: 1. 下载memcached软件包,解压,把memcached.exe 放到随意一个地方,比如:d:/memcached/ 下. 2. 开始->运行->输入cmd,命令行打开memcached.exe,所在文件夹,输入:memcached.exe -d install  安装 3. 输入memcached.exe -d start 启动 4. 中加入 extension=php_memcache.dl

  • 深入解析PHP的Yii框架中的缓存功能

    数据缓存是指将一些 PHP 变量存储到缓存中,使用时再从缓存中取回.它也是更高级缓存特性的基础,例如查询缓存和内容缓存. 如下代码是一个典型的数据缓存使用模式.其中 $cache 指向缓存组件: // 尝试从缓存中取回 $data $data = $cache->get($key); if ($data === false) { // $data 在缓存中没有找到,则重新计算它的值 // 将 $data 存放到缓存供下次使用 $cache->set($key, $data); } // 这儿

  • YII Framework框架教程之缓存用法详解

    本文实例讲述了YII Framework框架缓存用法.分享给大家供大家参考,具体如下: 缓存的产生原因众所周知.于是YII作为一个高效,好用的框架,不能不支持缓存.所以YII对各种流行的缓存都提供了接口,你可以根据你的需要使用不同的缓存. 1.YII中的缓存介绍 YII中的缓存是通过组件方式定义的,具体在如下目录 /yii_dev/yii/framework/caching# tree . ├── CApcCache.php ├── CCache.php ├── CDbCache.php ├──

  • Yii数据库缓存实例分析

    本文实例讲述了Yii数据库缓存用法.分享给大家供大家参考,具体如下: yii  操作数据库缓存: 1.在main.php主文件中添加 'dbcache'=>array( 'class'=>'system.caching.CDbCache', //数据库缓存,注意你自己的路径问题 ), 2.设置数据库缓存 Yii::app()->cache->set($key,$value,$outtime); //$key 唯一主键,$value 对应主键的值(可以是数组), $outtime 过

  • Yii 2.0如何使用页面缓存方法示例

    前言 本文主要给大家介绍的是关于Yii2.0如何使用页面缓存的相关内容,分享出来供大家参考学习,下面来一起看看详细的介绍. 起初使用页面缓存,发现使用于含有参数的方法存在弊端,只能缓存第一次的页面,导致后面所有不同参数的页面均显示第一次缓存页面:没有生成一个参数页面一个缓存:于是,进行了重写页面缓存. 示例代码 <?php namespace common\lib; use Yii; use yii\caching\Cache; use yii\di\Instance; use yii\web\

  • 简介PHP的Yii框架中缓存的一些高级用法

    页面缓存 页面缓存指的是在服务器端缓存整个页面的内容.随后当同一个页面被请求时,内容将从缓存中取出,而不是重新生成. 页面缓存由 yii\filters\PageCache 类提供支持,该类是一个过滤器.它可以像这样在控制器类中使用: public function behaviors() { return [ [ 'class' => 'yii\filters\PageCache', 'only' => ['index'], 'duration' => 60, 'variations'

随机推荐