
RecursiveIteratorIterator::valid() 메서드는 현재 항목이 유효한지 확인하는 데 사용됩니다. 이 메서드는 Iterator가 유효한 상태에서만 호출할 수 있습니다. Iterator가 유효하지 않은 상태에서 이 메서드를 호출하면 예외가 발생합니다.
Iterator가 유효한지 확인하는 방법은 다음과 같습니다.
#hostingforum.kr
php
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator('/path/to/directory'));
if ($iterator->valid()) {
// 현재 항목이 유효합니다.
echo $iterator->current()->getFilename() . "n";
} else {
// 현재 항목이 유효하지 않습니다.
echo "현재 항목이 유효하지 않습니다.n";
}
Iterator가 유효하지 않은 상태에서 valid() 메서드를 호출하면 예외가 발생합니다.
#hostingforum.kr
php
$iterator = new RecursiveIteratorIterator(new RecursiveDirectoryIterator('/path/to/directory'));
$iterator->next(); // Iterator가 유효하지 않은 상태로 next() 메서드를 호출합니다.
try {
if ($iterator->valid()) {
// 현재 항목이 유효합니다.
echo $iterator->current()->getFilename() . "n";
} else {
// 현재 항목이 유효하지 않습니다.
echo "현재 항목이 유효하지 않습니다.n";
}
} catch (Exception $e) {
// 예외가 발생했습니다.
echo "예외가 발생했습니다.n";
}
Iterator가 유효한 상태에서만 valid() 메서드를 호출해야 합니다. Iterator가 유효하지 않은 상태에서 이 메서드를 호출하면 예외가 발생합니다.
2025-08-10 16:35