如何在Yii中一起使用文件缓存和Memcached

时间:2014-03-03 09:36:59

标签: php caching yii

我必须使用内存缓存,使用 CFileCache 和(可变对象)缓存视图(HTML)。

如何同时配置它:

我需要的是:

视图中的

<?php if($this->beginCache($id)) { ?>
...content to be cached...
<?php $this->endCache(); } ?>
...other HTML content...

所以执行以前的代码会输出文件,如( xxxxxx.bin

在我的acton中我必须保存在内存中( Memcache ),如:

$user = $this->getUserById(2);
Yii::app()->cache->set('user2', $user);
Yii::app()->cache->get('user2');

因此所有变量和对象都将保存在Memory

和我的main.php:

'cache'=>array(
   'class'=>'system.caching.CFileCache',
 ),

此外,如果我必须使用 APC 用于操作码,如何使用其他缓存类型配置它以在我的应用程序中使用多种缓存类型。

任何有关如何配置的帮助。

由于

1 个答案:

答案 0 :(得分:1)

我没有对此进行测试,但您可以尝试定义类似

的内容
'cache'=>array(
   'class'=>'system.caching.CFileCache',
 ),
'memcache'=>array(
   'class'=>'system.caching.CMemCache',
 ),

然后你应该能够做到

Yii::app()->memcache->set('user2', $user);
Yii::app()->memcache->get('user2');

我真的没有尝试过这个,但考虑如何在Yii中定义数据库连接和其他东西,这应该有用。