Categories
PHP

PHP에서 자주 쓰이는 디렉토리 관련 함수: opendir, closedir, readdir, rewinddir

PHP에서 자주 쓰이는 디렉토리 관련 함수들에 대해 알아보자.

1. opendir() 함수와 closedir() 함수

opendir() 함수는 디렉토리 핸들을 연다. 디렉토리 핸들은 readdir() 함수 등 다른 디렉토리 관련 함수에서 사용된다.

closedir() 함수는 디렉토리 핸들을 닫는다.

$dh = opendir("/share/xtmci");    // 디렉토리 핸들을 연다.

  /* 디렉토리 관련 작업을 한다. */

closedir($dh);    // 디렉토리 핸들을 닫는다.

2. readdir() 함수

readdir() 함수는 디렉토리 핸들로부터 파일이나 디렉토리의 이름을 읽는다. 읽는 순서는 파일시스템에서 파일이나 디렉토리가 저장된 순서이다. 읽기에 실패한 경우 false 를 리턴한다.

디렉토리 안에 있는 파일이나 디렉토리를 디렉토리 엔트리 (entry) 라고 한다.

$dh = opendir("/share/xtmci");    // 디렉토리 핸들을 연다.

while (($entry = readdir($dh)) !== false) {    // 디렉토리 엔트리를 읽는다.
  echo $entry . "<br>";    // 디렉토리 엔트리를 출력한다.
}

closedir($dh);    // 디렉토리 핸들을 닫는다.

3. rewinddir() 함수

rewinddir() 함수는 디렉토리 핸들을 초기화한다. 디렉토리를 처음부터 다시 읽을 필요가 있을 때 이 함수를 쓴다. 리턴값은 없다.

$dh = opendir("/share/xtmci");    // 디렉토리 핸들을 연다.

while (($entry = readdir($dh)) !== false) {    // 디렉토리 엔트리를 읽는다.
  echo $entry . "<br>";    // 디렉토리 엔트리를 출력한다.
}

rewinddir($dh);    // 디렉토리 핸들을 초기화한다.

// 디렉토리 엔트리를 처음부터 다시 읽는다.
while (($entry = readdir($dh)) !== false) {
  echo $entry . "<br>";    // 디렉토리 엔트리를 출력한다.
}

closedir($dh);    // 디렉토리 핸들을 닫는다.

Leave a Reply

Your email address will not be published. Required fields are marked *