本文整理汇总了PHP中AbstractController::clear_cache方法的典型用法代码示例。如果您正苦于以下问题:PHP AbstractController::clear_cache方法的具体用法?PHP AbstractController::clear_cache怎么用?PHP AbstractController::clear_cache使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AbstractController
的用法示例。
在下文中一共展示了AbstractController::clear_cache方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: clear_cache
function clear_cache($path)
{
$base = DOC_ROOT . '/';
# trim trailing /
$path = strrpos($path, '/') == strlen($path) - 1 ? substr($path, 0, -1) : $path;
# parse path
$dirs = explode('/', $path);
# if the last item is a * then clear all cache files at that location
$last = array_pop($dirs);
if ($last == '*') {
$targetpath = join('/', $dirs);
if (file_exists($base . $targetpath)) {
$dirhandle = opendir($base . $targetpath);
while (($file = readdir($dirhandle)) !== false) {
$pi = pathinfo($file);
if ($pi['extension'] == AbstractController::_cache_extension) {
unlink($base . $targetpath . '/' . $file);
} else {
if ($file[0] != '.' && is_dir($base . $targetpath . '/' . $file)) {
AbstractController::clear_cache($targetpath . '/' . $file . '/*');
}
}
}
closedir($dirhandle);
}
# also delete the cache file for the dir
if (file_exists($base . $targetpath . '.' . AbstractController::_cache_extension)) {
unlink($base . $targetpath . '.' . AbstractController::_cache_extension);
}
} else {
unlink($base . $path . '.' . AbstractController::_cache_extension);
}
}