라이브러리
[PHP] RecursiveDirectoryIterator::__construct - RecursiveDirectoryIterator를 구성합니다.
RecursiveDirectoryIterator::__construct
`RecursiveDirectoryIterator`는 PHP의 SPL(Serializable, Recursive, Iterator) 모듈에서 제공하는 클래스로, 디렉토리 내의 모든 파일과 서브 디렉토리를 반복적으로 접근할 수 있는 이터레이터를 제공합니다. `RecursiveDirectoryIterator` 클래스의 생성자 `__construct` 메서드는 디렉토리 경로를 지정하여 이터레이터를 초기화합니다.
생성자 옵션
`RecursiveDirectoryIterator`의 생성자는 다음과 같은 옵션을 제공합니다.
* `path`: 디렉토리 경로를 지정합니다. 디렉토리가 존재하지 않으면 예외가 발생합니다.
* `flags`: 디렉토리 내의 파일과 서브 디렉토리를 반복적으로 접근할 때 사용할 플래그를 지정합니다. 가능한 플래그는 다음과 같습니다.
* `RecursiveDirectoryIterator::SKIP_DOTS`: 디렉토리 내의 '.' 및 '..' 파일을 무시합니다.
* `RecursiveDirectoryIterator::SELF_READABLE`: 디렉토리가 읽기 전용이면 예외가 발생합니다.
* `RecursiveDirectoryIterator::UNIX_PATHS`: 디렉토리 경로를 UNIX 스타일로 변환합니다.
* `context`: 디렉토리 내의 파일과 서브 디렉토리를 반복적으로 접근할 때 사용할 리소스를 지정합니다.
예제
다음 예제는 `RecursiveDirectoryIterator`를 사용하여 디렉토리 내의 모든 파일과 서브 디렉토리를 반복적으로 접근하는 방법을 보여줍니다.
#hostingforum.kr
php
// 디렉토리 경로를 지정합니다.
$path = '/var/www/html';
// 디렉토리 내의 파일과 서브 디렉토리를 반복적으로 접근할 때 사용할 플래그를 지정합니다.
$flags = RecursiveDirectoryIterator::SKIP_DOTS;
// 디렉토리 내의 파일과 서브 디렉토리를 반복적으로 접근할 때 사용할 리소스를 지정합니다.
$context = null;
// RecursiveDirectoryIterator를 초기화합니다.
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path, $flags), RecursiveIteratorIterator::SELF_FIRST);
// 디렉토리 내의 파일과 서브 디렉토리를 반복적으로 접근합니다.
foreach ($iterator as $file) {
// 파일이 디렉토리인지 파일인지 확인합니다.
if ($file->isDir()) {
echo "디렉토리: " . $file->getPathname() . "
";
} else {
echo "파일: " . $file->getPathname() . "
";
}
}
이 예제에서는 `RecursiveDirectoryIterator`를 사용하여 `/var/www/html` 디렉토리 내의 모든 파일과 서브 디렉토리를 반복적으로 접근합니다. `RecursiveIteratorIterator`를 사용하여 디렉토리 내의 파일과 서브 디렉토리를 반복적으로 접근할 때, 서브 디렉토리 내의 파일과 서브 디렉토리를 반복적으로 접근할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.