1<?php
2
3/** @file directorygraphiterator.inc
4 * @ingroup Examples
5 * @brief class DirectoryGraphIterator
6 * @author  Marcus Boerger
7 * @date    2003 - 2008
8 *
9 * SPL - Standard PHP Library
10 */
11
12/** @ingroup Examples
13 * @brief   A tree iterator that only shows directories.
14 * @author  Marcus Boerger
15 * @version 1.1
16 */
17class DirectoryGraphIterator extends DirectoryTreeIterator
18{
19	function __construct($path)
20	{
21		RecursiveIteratorIterator::__construct(
22			new RecursiveCachingIterator(
23				new ParentIterator(
24					new RecursiveDirectoryIterator($path, RecursiveDirectoryIterator::KEY_AS_FILENAME
25					)
26				),
27				CachingIterator::CALL_TOSTRING|CachingIterator::CATCH_GET_CHILD
28			),
29			parent::SELF_FIRST
30		);
31	}
32}
33
34?>