php删除目录下的全部文件和目录

<?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');
?>
相关文章
相关标签/搜索