
MultipleIterator의 valid 속성은 현재 Iterator가 현재 위치를 갖고 있는지 여부를 반환합니다.
valid() 메소드는 Iterator가 현재 위치를 갖고 있지 않다면 false를 반환하고, Iterator가 현재 위치를 갖고 있다면 true를 반환합니다.
이 메소드는 Iterator를 조합하여 하나의 Iterator를 만들 때, 각 Iterator의 현재 위치를 관리하기 위해 사용됩니다.
예를 들어,
#hostingforum.kr
php
$iterator1 = new ArrayIterator([1, 2, 3]);
$iterator2 = new ArrayIterator(['a', 'b', 'c']);
$multipleIterator = new MultipleIterator(MultipleIterator::CUBED);
$multipleIterator->attachIterator($iterator1);
$multipleIterator->attachIterator($iterator2);
while ($multipleIterator->valid()) {
$value1 = $multipleIterator->current()[0];
$value2 = $multipleIterator->current()[1];
echo "($value1, $value2)n";
$multipleIterator->next();
}
위의 예제에서는 Iterator를 조합하여 하나의 Iterator를 만들고, 현재 Iterator가 현재 위치를 갖고 있는지 확인합니다. 만약 Iterator가 현재 위치를 갖고 있지 않다면, while 반복문을 종료합니다. 만약 Iterator가 현재 위치를 갖고 있다면, 반복문을 계속해서 진행합니다.
valid() 메소드는 Iterator를 조합하여 하나의 Iterator를 만들 때 각 Iterator의 현재 위치를 관리하기 위해 사용됩니다. 또한, Iterator가 현재 위치를 갖고 있는지 확인하기 위해 사용됩니다.
만약 Iterator가 현재 위치를 갖고 있지 않다면, false를 반환하고, Iterator가 현재 위치를 갖고 있다면, true를 반환합니다.
2025-04-16 06:27