我使用以下行在我的服务器上创建目录:
mkdir("/var/www/cache/$directory", 0700);
然后我使用以下方法将一些文件复制到其中:
copy($remote, $local);
现在我试图用这个删除目录及其所有文件,但它不起作用:
$local = "/var/www/cache/$directory";
$removed = unlink($local);
无论如何使用单线而不是for循环还是这样做?
答案 0 :(得分:0)
您可以使用php中的RecursiveIteratorIterator
类来完成此操作。
here的一个简单示例是
$files = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator($dir, RecursiveDirectoryIterator::SKIP_DOTS),
RecursiveIteratorIterator::CHILD_FIRST
);
foreach ($files as $fileinfo) {
$todo = ($fileinfo->isDir() ? 'rmdir' : 'unlink');
$todo($fileinfo->getRealPath());
}
rmdir($dir);
有许多方法也被描述为here ..