라이브러리
[PHP] RecursiveIteratorIterator::__construct - RecursiveIteratorIterator 구성
RecursiveIteratorIterator::__construct
PHP의 RecursiveIteratorIterator는 반복 가능한 객체를 반복하고, 그 반복 가능한 객체가 또 다른 반복 가능한 객체를 포함하는 경우에 사용됩니다. RecursiveIteratorIterator::__construct는 RecursiveIteratorIterator 객체를 생성하는 생성자 함수입니다.
# 생성자 함수의 매개변수
RecursiveIteratorIterator::__construct의 생성자 함수에는 두 개의 매개변수가 있습니다.
* `$iterator`: 반복 가능한 객체를 나타내는 IteratorInterface 객체입니다.
* `$flags`: 반복을 제어하는 플래그입니다. 기본값은 RecursiveIteratorIterator::CHILD_FIRST입니다.
# 플래그
RecursiveIteratorIterator::__construct의 `$flags` 매개변수에는 다음과 같은 플래그가 있습니다.
* `RecursiveIteratorIterator::SELF_FIRST`: 현재 반복 가능한 객체를 먼저 반복합니다.
* `RecursiveIteratorIterator::CHILD_FIRST`: 현재 반복 가능한 객체의 자식 객체를 먼저 반복합니다.
* `RecursiveIteratorIterator::LEAVES_ONLY`: 현재 반복 가능한 객체의 자식 객체를 제외하고 반복합니다.
* `RecursiveIteratorIterator::CURRENT_AS_KEY`: 현재 반복 가능한 객체의 키를 현재 반복 가능한 객체로 변환합니다.
* `RecursiveIteratorIterator::CURRENT_AS_OBJECT`: 현재 반복 가능한 객체를 현재 반복 가능한 객체로 변환합니다.
* `RecursiveIteratorIterator::TOPOORDER`: 현재 반복 가능한 객체의 자식 객체를 반복할 때, 자식 객체의 자식 객체를 먼저 반복합니다.
# 예제
다음 예제는 RecursiveIteratorIterator::__construct를 사용하여 반복 가능한 객체를 반복하는 방법을 보여줍니다.
#hostingforum.kr
php
// 반복 가능한 객체를 생성합니다.
$iterator = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator('/path/to/directory', RecursiveDirectoryIterator::SKIP_DOTS),
RecursiveIteratorIterator::SELF_FIRST
);
// 반복 가능한 객체를 반복합니다.
foreach ($iterator as $file) {
if ($file->isDir()) {
echo "Directory: " . $file->getFilename() . "
";
} else {
echo "File: " . $file->getFilename() . "
";
}
}
이 예제에서는 RecursiveDirectoryIterator를 사용하여 디렉토리와 파일을 반복 가능한 객체로 생성합니다. RecursiveIteratorIterator::__construct를 사용하여 반복 가능한 객체를 반복합니다. 플래그 `RecursiveIteratorIterator::SELF_FIRST`를 사용하여 현재 반복 가능한 객체를 먼저 반복합니다.
# 플래그를 사용한 예제
다음 예제는 RecursiveIteratorIterator::__construct를 사용하여 플래그를 사용하여 반복 가능한 객체를 반복하는 방법을 보여줍니다.
#hostingforum.kr
php
// 반복 가능한 객체를 생성합니다.
$iterator = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator('/path/to/directory', RecursiveDirectoryIterator::SKIP_DOTS),
RecursiveIteratorIterator::CHILD_FIRST
);
// 반복 가능한 객체를 반복합니다.
foreach ($iterator as $file) {
if ($file->isDir()) {
echo "Directory: " . $file->getFilename() . "
";
} else {
echo "File: " . $file->getFilename() . "
";
}
}
이 예제에서는 RecursiveIteratorIterator::__construct를 사용하여 플래그 `RecursiveIteratorIterator::CHILD_FIRST`를 사용하여 현재 반복 가능한 객체의 자식 객체를 먼저 반복합니다.
# 플래그를 사용한 예제 (TOPOORDER)
다음 예제는 RecursiveIteratorIterator::__construct를 사용하여 플래그 `RecursiveIteratorIterator::TOPOORDER`를 사용하여 반복 가능한 객체를 반복하는 방법을 보여줍니다.
#hostingforum.kr
php
// 반복 가능한 객체를 생성합니다.
$iterator = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator('/path/to/directory', RecursiveDirectoryIterator::SKIP_DOTS),
RecursiveIteratorIterator::TOPOORDER
);
// 반복 가능한 객체를 반복합니다.
foreach ($iterator as $file) {
if ($file->isDir()) {
echo "Directory: " . $file->getFilename() . "
";
} else {
echo "File: " . $file->getFilename() . "
";
}
}
이 예제에서는 RecursiveIteratorIterator::__construct를 사용하여 플래그 `RecursiveIteratorIterator::TOPOORDER`를 사용하여 현재 반복 가능한 객체의 자식 객체를 반복할 때, 자식 객체의 자식 객체를 먼저 반복합니다.
# 플래그를 사용한 예제 (LEAVES_ONLY)
다음 예제는 RecursiveIteratorIterator::__construct를 사용하여 플래그 `RecursiveIteratorIterator::LEAVES_ONLY`를 사용하여 반복 가능한 객체를 반복하는 방법을 보여줍니다.
#hostingforum.kr
php
// 반복 가능한 객체를 생성합니다.
$iterator = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator('/path/to/directory', RecursiveDirectoryIterator::SKIP_DOTS),
RecursiveIteratorIterator::LEAVES_ONLY
);
// 반복 가능한 객체를 반복합니다.
foreach ($iterator as $file) {
if ($file->isDir()) {
echo "Directory: " . $file->getFilename() . "
";
} else {
echo "File: " . $file->getFilename() . "
";
}
}
이 예제에서는 RecursiveIteratorIterator::__construct를 사용하여 플래그 `RecursiveIteratorIterator::LEAVES_ONLY`를 사용하여 현재 반복 가능한 객체의 자식 객체를 제외하고 반복합니다.
# 플래그를 사용한 예제 (CURRENT_AS_KEY)
다음 예제는 RecursiveIteratorIterator::__construct를 사용하여 플래그 `RecursiveIteratorIterator::CURRENT_AS_KEY`를 사용하여 반복 가능한 객체를 반복하는 방법을 보여줍니다.
#hostingforum.kr
php
// 반복 가능한 객체를 생성합니다.
$iterator = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator('/path/to/directory', RecursiveDirectoryIterator::SKIP_DOTS),
RecursiveIteratorIterator::CURRENT_AS_KEY
);
// 반복 가능한 객체를 반복합니다.
foreach ($iterator as $key => $file) {
if ($file->isDir()) {
echo "Directory: " . $key . "
";
} else {
echo "File: " . $key . "
";
}
}
이 예제에서는 RecursiveIteratorIterator::__construct를 사용하여 플래그 `RecursiveIteratorIterator::CURRENT_AS_KEY`를 사용하여 현재 반복 가능한 객체의 키를 현재 반복 가능한 객체로 변환합니다.
# 플래그를 사용한 예제 (CURRENT_AS_OBJECT)
다음 예제는 RecursiveIteratorIterator::__construct를 사용하여 플래그 `RecursiveIteratorIterator::CURRENT_AS_OBJECT`를 사용하여 반복 가능한 객체를 반복하는 방법을 보여줍니다.
#hostingforum.kr
php
// 반복 가능한 객체를 생성합니다.
$iterator = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator('/path/to/directory', RecursiveDirectoryIterator::SKIP_DOTS),
RecursiveIteratorIterator::CURRENT_AS_OBJECT
);
// 반복 가능한 객체를 반복합니다.
foreach ($iterator as $file) {
if ($file->isDir()) {
echo "Directory: " . $file->getFilename() . "
";
} else {
echo "File: " . $file->getFilename() . "
";
}
}
이 예제에서는 RecursiveIteratorIterator::__construct를 사용하여 플래그 `RecursiveIteratorIterator::CURRENT_AS_OBJECT`를 사용하여 현재 반복 가능한 객체를 현재 반복 가능한 객체로 변환합니다.
이러한 예제는 RecursiveIteratorIterator::__construct를 사용하여 플래그를 사용하여 반복 가능한 객체를 반복하는 방법을 보여줍니다. 플래그를 사용하여 반복 가능한 객체를 반복할 때, 다양한 플래그를 사용하여 반복을 제어할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.