
ArrayObject::getIterator를 사용하여 배열의 아이템을 순회할 때 오류가 발생하는 원인은, getIterator 메서드가 ArrayObject 객체를 반복 가능한 객체로 반환하지 않기 때문입니다.
ArrayObject 객체를 반복 가능한 객체로 변환하려면, getIterator 메서드의 반환 값을 foreach 문에 직접 사용하지 않고, 변수에 저장한 후 foreach 문에 사용해야 합니다.
해결 방법은 다음과 같습니다.
#hostingforum.kr
php
$array = new ArrayObject([1, 2, 3]);
$iterator = $array->getIterator();
while ($iterator->valid()) {
echo $iterator->current() . "n";
$iterator->next();
}
또는 foreach 문에 사용할 수 있도록 ArrayObject 객체를 반복 가능한 객체로 변환하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$array = new ArrayObject([1, 2, 3]);
foreach ($array as $value) {
echo $value . "n";
}
이러한 방법을 사용하면 ArrayObject::getIterator를 사용하여 배열의 아이템을 순회할 때 오류가 발생하지 않습니다.
2025-03-18 19:27