>  기사  >  백엔드 개발  >  PHP 디렉터리 생성 및 삭제 기능 소개와 재귀적 디렉터리 삭제 기능 공유_php 팁

PHP 디렉터리 생성 및 삭제 기능 소개와 재귀적 디렉터리 삭제 기능 공유_php 팁

WBOY
WBOY원래의
2016-05-16 20:31:39959검색

mkdir() — 새 디렉토리 생성

코드 복사 코드는 다음과 같습니다.

– 구문: bool mkdir (문자열 경로 이름 [,int 모드])
– 경로명으로 지정된 새 디렉토리를 생성해 보십시오.

rmdir() — 디렉토리 삭제
코드 복사 코드는 다음과 같습니다.

– 구문: bool rmdir (문자열 디렉토리 이름)
– dirname으로 지정된 디렉터리를 삭제하려고 시도합니다. 디렉터리는 비어 있어야 하며 적절한 권한이 있어야 합니다. 성공하면 TRUE를 반환하고, 실패하면
을 반환합니다. 거짓.

링크 해제 — 파일 삭제
코드 복사 코드는 다음과 같습니다.

– 구문: bool unlink ( 문자열 파일 이름 )
– 파일 이름을 삭제합니다. Unix C의 unlink() 함수와 유사합니다. 성공하면 TRUE를, 실패하면 FALSE를 반환합니다.

PHP에서는 mkdir() 함수를 사용하여 디렉터리 이름을 전달하기만 하면 쉽게 새 디렉터리를 만들 수 있습니다. 그러나 디렉토리를 삭제하는 데 사용되는 rmdir() 함수는 빈 디렉토리만 삭제할 수 있으며 해당 디렉토리가 존재해야 합니다. 비어 있지 않은 디렉토리인 경우 먼저 디렉토리에 들어가서 unlink() 함수를 사용하여 디렉토리의 모든 파일을 삭제한 다음 돌아와서 빈 디렉토리를 삭제해야 합니다. 디렉터리에 디렉터리가 아직 있고 하위 디렉터리가 비어 있지 않은 경우 재귀 방법을 사용해야 합니다. 디렉토리를 삭제하는 사용자 정의 재귀 함수의 프로그램 코드는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

//전체 디렉토리를 재귀적으로 삭제하는 사용자 정의 함수
함수 delDir($directory){
If(file_exists($directory)){ //rmdir() 함수가 없으면 오류가 발생합니다
If($dir_handle = @opendir($directory)){ //디렉토리를 열고 성공적으로 열 수 있는지 확인
~                 with($filename = readdir($dir_handle)){ If($filename != "."&& $filename != ".."){ //두 개의 특수 디렉토리를 제외해야 합니다
                      $subFile = $directory."/".$filename; If(is_dir($subFile)) //디렉토리이면 조건은 true
Deldir ($ Subfile); // 자신만의 함수를 재귀적으로 호출하고, 하위 디렉터리를 삭제합니다.
If(is_file($subFile)) //파일이면 조건이 true
Unlink ($ subfile); // 이 파일을 직접 삭제합니다
                }
            }
             closeir($dir_handle) //파일 리소스 닫기
               rmdir($directory) //빈 디렉토리 삭제
         }
}
}

dirDir("phpMyAdmin"); //delDir() 함수를 호출하여 프로그램이 위치한 디렉터리에서 "phpMyAdmin" 파일을 삭제합니다
?>


물론 운영 체제 명령 "rm-rf"를 호출하여 비어 있지 않은 디렉터리를 삭제할 수도 있지만 보안 및 크로스 플랫폼 고려 사항을 위해 이를 사용하지 않도록 노력해야 합니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.