
ArrayIterator 클래스의 getFlags 메소드는 Iterator 플래그를 반환합니다. 이 플래그는 Iterator 인터페이스의 기능을 정의합니다.
Iterator 플래그는 다음과 같습니다.
- Iterator::VALID (0) : 이터레이터가 유효한지 여부를 나타냅니다.
- Iterator::KEY_VALUE_PAIR (1) : 이터레이터가 키-값 쌍을 반환하는지 여부를 나타냅니다.
- Iterator::BOTH (2) : 이터레이터가 양방향으로 이동할 수 있는지 여부를 나타냅니다.
- Iterator::CURRENT (4) : 이터레이터가 현재 값을 반환하는지 여부를 나타냅니다.
- Iterator::KEY (8) : 이터레이터가 현재 키를 반환하는지 여부를 나타냅니다.
- Iterator::NEXT (16) : 이터레이터가 다음 값을 반환하는지 여부를 나타냅니다.
- Iterator::REWIND (32) : 이터레이터가 처음으로 이동할 수 있는지 여부를 나타냅니다.
- Iterator::SEEKABLE (64) : 이터레이터가 특정 위치로 이동할 수 있는지 여부를 나타냅니다.
예제 코드는 다음과 같습니다.
#hostingforum.kr
php
$array = [1, 2, 3, 4, 5];
$iterator = new ArrayIterator($array);
$flags = $iterator->getFlags();
echo "유효한 이터레이터: " . ($flags & Iterator::VALID ? 'true' : 'false') . "n";
echo "키-값 쌍 반환: " . ($flags & Iterator::KEY_VALUE_PAIR ? 'true' : 'false') . "n";
echo "양방향 이동: " . ($flags & Iterator::BOTH ? 'true' : 'false') . "n";
echo "현재 값 반환: " . ($flags & Iterator::CURRENT ? 'true' : 'false') . "n";
echo "현재 키 반환: " . ($flags & Iterator::KEY ? 'true' : 'false') . "n";
echo "다음 값 반환: " . ($flags & Iterator::NEXT ? 'true' : 'false') . "n";
echo "처음으로 이동: " . ($flags & Iterator::REWIND ? 'true' : 'false') . "n";
echo "특정 위치 이동: " . ($flags & Iterator::SEEKABLE ? 'true' : 'false') . "n";
2025-05-31 05:55