readdir 함수

(PHP 4, PHP 5, PHP 7, PHP 8)

readdir — 디렉토리 핸들에서 항목 읽기


설명

readdir(?resource $dir_handle = null): string|false

디렉토리에서 다음 항목의 이름을 반환합니다. 항목은 파일 시스템에 저장된 순서대로 반환됩니다.


매개변수

dir_handle
이전에 opendir()로 열린 디렉토리 핸들 리소스입니다. 디렉토리 핸들이 지정되지 않으면 opendir()에 의해 열린 마지막 링크가 가정됩니다.

반환 값

성공하면 항목 이름을 반환하고 실패하면 false를 반환합니다.

경고 이 함수는 부울 false을 반환할 수 있지만 false으로 평가되는 부울이 아닌 값을 반환할 수도 있습니다. 자세한 내용은 부울 섹션을 참조하세요. 이 함수의 반환 값을 테스트하려면 === 연산자를 사용하십시오.


변경 로그

버전 설명
8.0.0 dir_handle는 이제 nullable입니다.

Examples

예제 #1 디렉토리의 모든 항목 나열

아래 예에서 readdir()의 반환 값을 확인하는 방식에 유의하십시오. 반환 값이 false와 동일한지 명시적으로 테스트하고 있습니다(더 자세한 정보는 비교 연산자 참조). 그렇지 않으면 이름이 false로 평가되는 디렉토리 항목이 루프를 중지합니다(예: "0"이라는 디렉토리).

                  
<?php

if ($handle = opendir('/path/to/files')) {
    echo "Directory handle: $handle\n";
    echo "Entries:\n";

    /* This is the correct way to loop over the directory. */
    while (false !== ($entry = readdir($handle))) {
        echo "$entry\n";
    }

    /* This is the WRONG way to loop over the directory. */
    while ($entry = readdir($handle)) {
        echo "$entry\n";
    }

    closedir($handle);
}
?>
                  
                

예제 #2 현재 디렉토리의 모든 항목을 나열하고 제거하십시오. 그리고 ..

                  
<?php
if ($handle = opendir('.')) {
    while (false !== ($entry = readdir($handle))) {
        if ($entry != "." && $entry != "..") {
            echo "$entry\n";
        }
    }
    closedir($handle);
}
?>
                  
                

기타

  • is_dir() - 파일 이름이 디렉토리인지 여부를 알려줍니다.
  • glob() - 패턴과 일치하는 경로 이름 찾기
  • opendir() - 디렉토리 핸들 열기
  • scandir() - 지정된 경로 내의 파일 및 디렉토리 나열