如何删除指定目录下的所有子目录?
目录路径为:c:/files/
我希望删除该目录下所有子目录(例如):
c:/files/something/something/something/
c:/files/another-something/
最终,c:/files/只剩下了(为空且没有子目录)。
rmdir()
仅删除给定路径中的最后一个目录...所以我猜我需要循环? :/非常感谢所有帮助。
(附注:子目录不包含任何文件)
如何删除指定目录下的所有子目录?
目录路径为:c:/files/
我希望删除该目录下所有子目录(例如):
c:/files/something/something/something/
c:/files/another-something/
rmdir()
仅删除给定路径中的最后一个目录...所以我猜我需要循环? :/ function rrmdir($dir) {
if (is_dir($dir)) {
$objects = scandir($dir);
foreach ($objects as $object) {
if ($object != "." && $object != "..") {
if (filetype($dir."/".$object) == "dir") rrmdir($dir."/".$object); else unlink($dir."/".$object);
}
}
reset($objects);
rmdir($dir);
}
}
这个问题可以通过递归来解决。
我想你正在寻找 RMDIR /S
例如,以下命令将删除目录 C:\blah
及其包含的所有子目录和文件。不会显示提示。
RMDIR c:\blah /s /q