我在symfony中使用文件缓存来存储我的数据一段时间限制。下面是我编写的代码。
$c = new sfFileCache(array('cache_dir' => sfConfig::get('sf_cache_dir').'/function'));
if ($c->has('myarray')) {
$cached = $c->get('myarray');
if (!empty($cached)) {
$data = unserialize($cached);
}
} else {
foreach($queries as $key => $query) {
foreach ($query->fetchArray() As $result) {
$data[] = $result;
}
}
$c->set('myarray',serialize($data));
}
任何人都可以告诉如何在symfony中设置文件缓存的时间限制,以便缓存在一小时后自动销毁。
答案 0 :(得分:1)
简单地:
$c = new sfFileCache(array(
'cache_dir' => sfConfig::get('sf_cache_dir').'/function',
'lifetime' => 3600
));
请参阅the code以了解sfCache中的其他选项。
答案 1 :(得分:0)
只是为使用APC的代码共享我的代码。应该是完全一样的。我刚刚传递了前缀“query”,因为我正在缓存一个查询。
$cache = new sfAPCCache(array('lifetime' => 600, 'prefix' => 'query'));