
RecursiveTreeIterator의 callHasChildren 메소드는 현재 노드가 자식 노드를 가지고 있는지 여부를 반환하는 메소드입니다.
이 메소드는 트리 구조의 데이터를 반복문으로 처리할 때, 현재 노드가 자식 노드를 가지고 있는지 여부를 확인할 때 사용됩니다.
callHasChildren 메소드의 반환값은 boolean 타입의 값으로, true이면 현재 노드가 자식 노드를 가지고 있으며, false이면 현재 노드는 자식 노드를 가지고 있지 않습니다.
예를 들어, 다음과 같이 트리 구조의 데이터를 반복문으로 처리할 때, callHasChildren 메소드를 사용할 수 있습니다.
#hostingforum.kr
php
$tree = array(
array('name' => 'A', 'children' => array(
array('name' => 'B', 'children' => array()),
array('name' => 'C', 'children' => array(
array('name' => 'D', 'children' => array()),
array('name' => 'E', 'children' => array())
))
))
);
$iterator = new RecursiveIteratorIterator(new RecursiveArrayIterator($tree));
foreach ($iterator as $node) {
if ($iterator->callHasChildren()) {
echo $node['name'] . ' has children' . PHP_EOL;
} else {
echo $node['name'] . ' has no children' . PHP_EOL;
}
}
위 예제에서, callHasChildren 메소드는 현재 노드가 자식 노드를 가지고 있는지 여부를 확인하여, 반복문 내에서 특정 조건에 따라 처리를 할 수 있습니다.
2025-07-14 18:23