我将每个页面缓存在自己的目录中,而不是在公共目录中:
www/contact/index.php
www/contact/index.php.cache
实现起来比较简单,但现在我必须手动清除每个文件。
理想情况下,我想运行www / clear-cache.php并让它在www /
中找到并删除以 .php.cache 结尾的所有文件我问这里因为我已经更新了网站,现在我有点急于清理缓存。
答案 0 :(得分:3)
如果你运行linux尝试这样的事情:
find . -name "*.php.cache" | xargs rm -f
答案 1 :(得分:1)
function delete_cache($path, $pattern,) {
$path = rtrim(str_replace("\\", "/", $path), '/') . '/';
$matches = Array();
$entries = Array();
$dir = dir($path);
while (false !== ($entry = $dir->read())) {
$entries[] = $entry;
}
$dir->close();
foreach ($entries as $entry) {
$fullname = $path . $entry;
if ($entry != '.' && $entry != '..' && is_dir($fullname)) {
delete_cache($fullname, $pattern);
} else if (is_file($fullname) && preg_match($pattern, $entry)) {
unlink($fullname); // delete the file
echo $fullname," deleted.<br />"; #comment out if you do not want to echo the file deleted.
}
}
}
这会遍历每个文件和目录,查找文件名中包含缓存的所有文件并将其删除并通过以下方式调用:
delete_cache(getenv("DOCUMENT_ROOT"), "/cache/i"); //Starts in the www/htdocs folder
我将首先声明备份站点,以确保它不会删除文件名中包含缓存所需的文件。或者,如果您想为自己的网站设置自动缓存系统,可以在Simple PHP caching with more than 3 parts
上查看我的答案