';
return;
}
}
$dir = rtrim($dir, DIRECTORY_SEPARATOR);
$top_dir = $dir;
$stack = array($dir);
$index = 0;
$flushed = false;
while ($index < count($stack)) {
# Get indexed directory from stack
$dir = $stack[$index];
$dh = @ opendir($dir);
if (!$dh) {
echo "Error opening cache directory ($dir).
Do you need to edit rs_cache_flush.php for a custom WP_CONTENT_DIR?";
return;
}
while (($file = @ readdir($dh)) !== false) {
if ($file == '.' or $file == '..')
continue;
if (@ is_dir($dir . DIRECTORY_SEPARATOR . $file))
$stack[] = $dir . DIRECTORY_SEPARATOR . $file;
else if (@ is_file($dir . DIRECTORY_SEPARATOR . $file)) {
@ unlink($dir . DIRECTORY_SEPARATOR . $file);
$flushed = true;
}
}
$index++;
}
$stack = array_reverse($stack); // Last added dirs are deepest
foreach($stack as $dir) {
if ( $dir != $top_dir) {
@ rmdir($dir);
$flushed = true;
}
}
if ( $flushed )
echo 'The cache was flushed';
else
echo 'No cache to flush!';
?>