mirror of
https://github.com/php/php-src.git
synced 2024-10-20 16:02:44 +00:00
46 lines
906 B
PHP
Executable File
46 lines
906 B
PHP
Executable File
<?php
|
|
|
|
/** @file parentiterator.inc
|
|
* @ingroup SPL
|
|
* @brief class FilterIterator
|
|
* @author Marcus Boerger
|
|
* @date 2003 - 2005
|
|
*
|
|
* SPL - Standard PHP Library
|
|
*/
|
|
|
|
/**
|
|
* @brief Iterator to filter parents
|
|
* @author Marcus Boerger
|
|
* @version 1.2
|
|
* @since PHP 5.1
|
|
*
|
|
* This extended FilterIterator allows a recursive iteration using
|
|
* RecursiveIteratorIterator that only shows those elements which have
|
|
* children.
|
|
*/
|
|
class ParentIterator extends RecursiveFilterIterator
|
|
{
|
|
/** @param $it the RecursiveIterator to filter
|
|
*/
|
|
function __construct(RecursiveIterator $it)
|
|
{
|
|
parent::__construct($it);
|
|
}
|
|
|
|
/** @return whetehr the current element has children
|
|
*/
|
|
function accept()
|
|
{
|
|
return $this->it->hasChildren();
|
|
}
|
|
|
|
/** @return the ParentIterator for the current elements children
|
|
*/
|
|
function getChildren()
|
|
{
|
|
return new ParentIterator($this->it->getChildren());
|
|
}
|
|
}
|
|
|
|
?>
|