php删除目录下的所有文件和目录

时间:2021-02-11 12:07:35
<?php
/**
* 递归实现删除目录下的所有的文件和文件夹
* @param $dir 要删除的目录
* @param bool $deleteRootToo 是否删除根目录 默认不删除
http://www.manongjc.com/article/1333.html
*/
function unlinkRecursive($dir, $deleteRootToo = false)
{
if(!$dh = @opendir($dir))
{
return;
}
while (false !== ($obj = readdir($dh)))
{
if($obj == '.' || $obj == '..')
{
continue;
}
if (!@unlink($dir . '/' . $obj))//删除文件, 如果是目录则返回false
{
unlinkRecursive($dir.'/'.$obj, true);
}
}
// http://www.manongjc.com/article/1334.html
closedir($dh);
if ($deleteRootToo)
{
@rmdir($dir);//删除目录
}
return;
}
unlinkRecursive('dir');
?>