
ArrayIterator::rewind 메서드는 ArrayIterator 객체의 내부 포인터를 처음으로 되돌려주는 메서드입니다. 내부 포인터의 현재 위치를 확인하려면, ArrayIterator 객체의 key() 메서드를 사용하면 됩니다.
예를 들어, 다음과 같이 ArrayIterator 객체를 생성하고 key() 메서드를 사용해 내부 포인터의 현재 위치를 확인할 수 있습니다.
#hostingforum.kr
php
$array = ['apple', 'banana', 'cherry'];
$iterator = new ArrayIterator($array);
echo $iterator->key(); // 0 (처음부터 시작)
$iterator->next();
echo $iterator->key(); // 1 (다음으로 이동)
$iterator->rewind();
echo $iterator->key(); // 0 (처음으로 되돌아감)
ArrayIterator::rewind 메서드를 사용해야 하는 상황은 다음과 같습니다.
- ArrayIterator 객체의 내부 포인터가 현재 마지막 위치에 위치하고 있을 때, 다시 처음부터 시작해야 하는 경우.
- ArrayIterator 객체의 내부 포인터가 현재 특정 위치에 위치하고 있을 때, 다시 처음부터 시작해야 하는 경우.
ArrayIterator::rewind 메서드를 사용하지 않아도 되는 상황은 다음과 같습니다.
- ArrayIterator 객체의 내부 포인터가 이미 처음 위치에 위치하고 있을 때.
- ArrayIterator 객체의 내부 포인터가 현재 위치에 상관없이, 중간 위치에서 작업을 시작해야 하는 경우. (이 경우, ArrayIterator::seek 메서드를 사용할 수 있습니다.)
예를 들어, 다음과 같이 ArrayIterator 객체를 생성하고 처음부터 시작할 때는 ArrayIterator::rewind 메서드를 사용할 필요가 없습니다.
#hostingforum.kr
php
$array = ['apple', 'banana', 'cherry'];
$iterator = new ArrayIterator($array);
echo $iterator->key(); // 0 (처음부터 시작)
// ArrayIterator::rewind 메서드를 사용할 필요가 없습니다.
반면에, 다음과 같이 ArrayIterator 객체를 생성하고 내부 포인터가 마지막 위치에 위치하고 있을 때는 ArrayIterator::rewind 메서드를 사용해야 합니다.
#hostingforum.kr
php
$array = ['apple', 'banana', 'cherry'];
$iterator = new ArrayIterator($array);
for ($i = 0; $i < count($array); $i++) {
$iterator->next();
}
echo $iterator->key(); // 마지막 위치
// ArrayIterator::rewind 메서드를 사용해야 합니다.
$iterator->rewind();
echo $iterator->key(); // 처음 위치
2025-03-27 16:15