> 백엔드 개발 > PHP 문제 > PHP에서 비어 있지 않은 폴더를 삭제하는 방법

PHP에서 비어 있지 않은 폴더를 삭제하는 방법

青灯夜游
풀어 주다: 2023-03-08 20:54:01
원래의
2665명이 탐색했습니다.

PHP에서 비어 있지 않은 폴더를 삭제하는 방법: 먼저 unlink() 함수를 사용하여 폴더의 모든 파일을 삭제합니다. 구문 형식은 "unlink(filename)"입니다. 그런 다음 rmdir() 함수를 사용하여 빈 파일을 삭제합니다. 예, 구문 형식은 "rmdir(dir)"입니다.

PHP에서 비어 있지 않은 폴더를 삭제하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, PHP 버전 7.1, DELL G3 컴퓨터

php rmdir() 함수는 빈 디렉터리를 삭제하는 데 사용되지만, 비어 있지 않은 디렉터리를 삭제하려면 파일 또는 하위 디렉터리 삭제에는 비어 있지 않은 디렉터리를 추가해야 합니다. PHP에서 비어 있지 않은 디렉터리를 삭제하는 방법을 소개하겠습니다.

php rmdir() 함수

rmdir - 빈 디렉토리 삭제

구문: ​​

bool rmdir ( string $dirname [, resource $context ] )
로그인 후 복사

dirname으로 지정된 디렉토리를 삭제해 보세요. 디렉터리는 비어 있어야 하며 적절한 권한이 있어야 합니다. 실패 시 E_WARNING 수준 오류가 생성됩니다.
매개변수:

  • dirname: 디렉터리 경로입니다.
  • 컨텍스트: PHP 5.0.0에 컨텍스트에 대한 지원이 추가되었습니다.

추천 학습: "PHP 비디오 튜토리얼"

php rmdir()은 비어 있지 않은 디렉토리를 삭제합니다

위에서 언급한 것처럼 rmdir() 함수는 빈 디렉토리만 삭제할 수 있습니다. 비어 있지 않은 디렉터리입니다. 먼저 디렉터리에 들어가서 unlink() 함수를 사용하여 디렉터리의 모든 파일을 삭제한 다음 돌아와서 빈 디렉터리를 삭제합니다. 디렉터리에 하위 디렉터리가 있고 디렉터리가 비어 있지 않은 경우 재귀적 방법을 사용해야 합니다. 디렉토리를 삭제하는 사용자 정의 재귀 함수의 소스 코드는 다음과 같습니다.

<?php
/* by http://www.manongjc.com/article/27.html*/
function delDir($directory){//自定义函数递归的函数整个目录
    if(file_exists($directory)){//判断目录是否存在,如果不存在rmdir()函数会出错
        if($dir_handle=@opendir($directory)){//打开目录返回目录资源,并判断是否成功
            while($filename=readdir($dir_handle)){//遍历目录,读出目录中的文件或文件夹
                if($filename!=&#39;.&#39; && $filename!=&#39;..&#39;){//一定要排除两个特殊的目录
                    $subFile=$directory."/".$filename;//将目录下的文件与当前目录相连
                    if(is_dir($subFile)){//如果是目录条件则成了
                        delDir($subFile);//递归调用自己删除子目录
                    }
                    if(is_file($subFile)){//如果是文件条件则成立
                        unlink($subFile);//直接删除这个文件
                    }
                }
            }
            closedir($dir_handle);//关闭目录资源
            rmdir($directory);//删除空目录
        }
    }
}

delDir("mydir");//调用delDir函数

?>
로그인 후 복사

비어 있지 않은 디렉토리의 재귀 삭제를 처리하는 것 외에도 운영 체제 명령 "rm -rf"를 사용하여 비어 있지 않은 디렉토리를 삭제할 수도 있습니다. 디렉토리이지만 보안 및 크로스 플랫폼 측면에서도 수행되어야 합니다. 가능한 한 사용하지 않는 것이 좋습니다.

더 많은 프로그래밍 관련 지식을 보려면 프로그래밍 비디오를 방문하세요! !

위 내용은 PHP에서 비어 있지 않은 폴더를 삭제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿