1

我想用这个RecursiveIteratorIterator类来建立一个菜单。

实际上我正在使用Zend_Navigation容器来构建主菜单和面包屑,但是它不适合我的其他需求,所以我使用带有迭代器的容器:

$navigation = $this->view->navigation()->getContainer();
$iterator = new RecursiveIteratorIterator( $navigation,
RecursiveIteratorIterator::SELF_FIRST);

然后我想知道两件事 - 当前级别和项目是否有更多孩子。第一个我可以通过getDepth()方法实现,第二个我尝试使用 callHasChildren(),但是这个总是返回 TRUE,即使 item 没有更多的孩子。

foreach ($iterator as $page) {         
    echo $iterator->getDepth() . $iterator->callHasChildren()) . '<br />';
}

知道如何使用这种方法吗?

4

0 回答 0