可能重复:
How do I recursively delete a directory and its entire contents (files+sub dirs) in PHP?
我需要删除PHP中的目录。没有内置的方法来删除包含文件的目录,所以我知道我必须使用其他人的脚本。
我发现了,我想我会用:
<?php
// simply pass the directory to be deleted to this function
function rrmdir($dir)
{
if (is_dir($dir)) // ensures that we actually have a directory
{
$objects = scandir($dir); // gets all files and folders inside
foreach ($objects as $object)
{
if ($object != '.' && $object != '..')
{
if (filetype($dir . '/' . $object) == 'dir')
{
// if we find a directory, do a recursive call
rrmdir($dir . '/' . $object);
}
else
{
// if we find a file, simply delete it
unlink($dir . '/' . $object);
}
}
}
// the original directory is now empty, so delete it
rmdir($dir);
}
}
?>
我看不出它有什么问题,我只是有点紧张,不仅要删除文件,还要整个目录,并递归地说。
有什么理由不行吗?你有没有使用过不同的东西?