>  기사  >  백엔드 개발  >  PHP에서 경로 아래의 모든 폴더와 파일을 삭제하는 방법은 무엇입니까?

PHP에서 경로 아래의 모든 폴더와 파일을 삭제하는 방법은 무엇입니까?

青灯夜游
青灯夜游앞으로
2020-05-04 10:59:202723검색

PHP에서 경로 아래의 모든 폴더와 파일을 삭제하는 방법은 무엇입니까? 다음 기사에서는 PHP에서 해당 경로 아래의 모든 폴더와 파일을 삭제하는 방법을 소개합니다. 도움이 필요한 친구들이 모두 참고할 수 있기를 바랍니다.

PHP에서 경로 아래의 모든 폴더와 파일을 삭제하는 방법은 무엇입니까?

사용된 함수:

  • scandir($path)는 폴더의 모든 파일을 탐색하고 배열을 반환합니다.

  • unlink($filename)은 파일을 삭제합니다.

  • rmdir($path)은 빈 폴더만 삭제합니다

코드:

단일 파일 삭제

$file = "./aa/aas.txt";
if (!unlink($file))
{
	echo ("Error deleting $file");
}
else
{
	echo ("Deleted $file");
}

방법 1은 경로 아래의 모든 폴더와 파일을 삭제합니다

$path = "./aa";
function deleteDir($dir)
{
    if (!$handle = @opendir($dir)) {
        return false;
    }
    while (false !== ($file = readdir($handle))) {
        if ($file !== "." && $file !== "..") {       //排除当前目录与父级目录
            $file = $dir . '/' . $file;
            if (is_dir($file)) {
                deleteDir($file);
            } else {
                @unlink($file);
            }
        }

    }
    @rmdir($dir);
}
deleteDir($path);

경로 아래의 삭제 방법 2 모든 폴더 및 파일

//设置需要删除的文件夹
$path = "./aa";
//清空文件夹函数和清空文件夹后删除空文件夹函数的处理
function deldir($path){
   //如果是目录则继续
   if(is_dir($path)){
    //扫描一个文件夹内的所有文件夹和文件并返回数组
	   $p = scandir($path);
	   foreach($p as $val){
	    //排除目录中的.和..
	    if($val !="." && $val !=".."){
	     //如果是目录则递归子目录,继续操作
		    if(is_dir($path.'/'.$val)){
		      //子目录中操作删除文件夹和文件
		      deldir($path.'/'.$val);
		      //目录清空后删除空文件夹
		      @rmdir($path.'/'.$val);
		    }else{
		      //如果是文件直接删除
		      unlink($path.'/'.$val);
		    }
		}
	   }
	}
  }
 //调用函数,传入路径
 deldir($path);

권장 학습: PHP 비디오 튜토리얼

위 내용은 PHP에서 경로 아래의 모든 폴더와 파일을 삭제하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제