我想知道像doctrine-cache或zend-cache这样的缓存系统如果这些文件不在/ tmp文件夹中,就会为缓存文件设置一个到期日期。如何设置缓存文件的到期时间?如果我想使用我自己的缓存文件系统而不是使用doctrine或zend,如果我不想将它放在/ tmp文件夹中,如何为它设置一个到期日期?
答案 0 :(得分:2)
缓存非常简单。我们假设你有目录cache
。
您为变量$expire
所以算法是
$file = "cache/cached.jpg";
$expire = 60 * 3600;
if (filectime($file) > time() + $expire)
{
// reload file and invalidate cache
} else if (file_exists($file){
// get from cache
} else {
// get file and save it to cache then return
}
但最好使用像http缓存这样的缓存,如expire header,varnish等。
答案 1 :(得分:1)
我建议将缓存服务用作Memcached。有一个third parameter到设置功能,这意味着该值过期的秒数。