로그인 회원가입
모두인포
전체IT경제사회생활스포츠시사여행연애

PHP 디렉터리 제어

lmkfox · 2025-08-04 · 조회 0
PHP 디렉터리 제어
1. 디렉터리 생성:  mkdir() mkdir("mydir"); - 기본적으로 현재 경로에 mydir이라는 디렉터리를 생성합니다. 옵션 사용 mkdir("parent/child", 0777, true); 매개변수 설명 0777 권한 설정 (읽기/쓰기/실행 모두 허용) true 중간 디렉터리까지 재귀적으로 생성 2. 디렉터리 삭제:  rmdir() rmdir("mydir"); - 디렉터리가 비어 있어야 삭제됩니다. - 내부에 파일이나 디렉터리가 있으면 삭제되지 않습니다. 재귀적으로 디렉터리 삭제 (사용자 정의 함수 예) function deleteDir($dir) { if (!file_exists($dir)) return; $items = scandir($dir); foreach ($items as $item) { if ($item == '.' || $item == '..') continue; $path = $dir . DIRECTORY_SEPARATOR . $item; if (is_dir($path)) { deleteDir($path); } else { unlink($path); } } rmdir($dir); } 3. 디렉터리 열기:  opendir() $handle = opendir("mydir"); - 디렉터리 핸들을 반환합니다. 4. 디렉터리 내용 읽기:  readdir() $handle = opendir("mydir"); while (($file = readdir($handle)) !== false) { echo $file . "<br>"; } closedir($handle); - .: 현재 디렉터리 - ..: 상위 디렉터리 - 일반 파일이나 디렉터리 이름이 나열됨 5. 디렉터리 닫기:  closedir() closedir($handle); - 열린 디렉터리 핸들을 닫습니다. 6. 디렉터리 목록 배열로 얻기:  scandir() $files = scandir("mydir"); foreach ($files as $file) { echo $file . "<br>"; } - 반환값은 배열이며 정렬된 상태로 들어옵니다. 7. 디렉터리 존재 여부 확인:  is_dir() if (is_dir("mydir")) { echo "디렉터리가 존재합니다."; } - 존재 여부 확인 시 file_exists()보다 is_dir()이 더 명확함 8. 디렉터리 권한 설정:  chmod() chmod("mydir", 0755); - Unix 계열에서만 작동 - 0755: 소유자에게는 읽기/쓰기/실행, 그룹과 다른 사용자에겐 읽기/실행 권한 9. 디렉터리 이름 변경 또는 이동:  rename() rename("old_dir", "new_dir"); - 디렉터리 이름 변경 또는 다른 위치로 이동 가능 10. 경로 처리 관련 함수 함수 설명 basename($path) 경로에서 파일/디렉터리 이름만 반환 dirname($path) 상위 경로 반환 realpath($path) 실제 전체 경로 반환 chdir($path) 현재 작업 디렉터리 변경 getcwd() 현재 작업 디렉터리 반환 예시 echo basename("/var/www/html"); // html echo dirname("/var/www/html"); // /var/www echo getcwd(); // 현재 작업 디렉터리 11. 디렉터리 생성 실패 시 예외 처리 $dir = "mydir"; if (!is_dir($dir)) { if (!mkdir($dir, 0755, true)) { die("디렉터리 생성 실패"); } } 12. 실용 예제: 디렉터리 내 파일 모두 출력 $path = "mydir"; if (is_dir($path)) { $files = array_diff(scandir($path), array('.', '..')); foreach ($files as $file) { echo $file . "<br>"; } } 요약 작업 함수 디렉터리 생성 mkdir() 디렉터리 삭제 rmdir(), 사용자 정의 재귀 함수 디렉터리 열기 opendir() 디렉터리 읽기 readdir(), scandir() 디렉터리 닫기 closedir() 디렉터리 존재 확인 is_dir() 디렉터리 권한 변경 chmod() 디렉터리 이름 변경/이동 rename() 현재 디렉터리 변경/확인 chdir(), getcwd()

댓글

아직 댓글이 없습니다.

로그인 후 댓글을 남길 수 있습니다.