php删除目录及目录下的内容

今天遇到一个问题:

  java写的API,ppt转图片生成的目录和文件

  在使用php调用API完成后,再使用php进行删除时,遇到了删除失败的问题

  部署的环境是Ubuntu

导致删除失败的原因是权限的问题,在生成目录和文件时,修改权限(java修改权限的介绍  查看

说明:

  在删除目录时,要确保目录和文件,及其所在的目录有写的权限

有了权限,用php删除目录及目录下的内容

<?php
$dirName = '/www/tmp';
echo "current :".get_current_user()."  ".$dirName;
deleteDir($dirName);
function deleteDir($dirName){
    if(file_exists($dirName)){//判断目录是否存在
        //如果是目录,那么我们就遍历下面的文件或者目录
        //打开目录句柄
        $dir = opendir($dirName);
        while($fileName = readdir($dir)){
            //不运行像上级目录运行
            if($fileName!="." && $fileName!=".."){
                $file = $dirName."/".$fileName;
                echo "||".$file."||";
                if(is_dir($file)){
                    deleteDir($file);//使用递归删除目录
                }else{
                    echo "--delete-".$file."++";
                    unlink($file);
                }
            }
        }
        closedir($dir);//关闭dir

        if( rmdir( $dirName ) )echo "成功删除目录: $dirName"; 

        
    }else{
        echo "对不起,目录不存在";
    }
}

 

posted @ 2019-07-02 18:06  慕尘  阅读(484)  评论(0编辑  收藏  举报