函數(shù)名稱:RecursiveTreeIterator::__construct()
適用版本:PHP 5 >= 5.3.0, PHP 7
函數(shù)描述:該方法用于構(gòu)造一個(gè)RecursiveTreeIterator對(duì)象,用于遍歷遞歸目錄結(jié)構(gòu)并以樹狀形式進(jìn)行展示。
用法:
RecursiveTreeIterator::__construct ( RecursiveIterator $iterator [, int $flags = RecursiveTreeIterator::BYPASS_KEY ] )
參數(shù):
$iterator
:必需,要遍歷的遞歸迭代器對(duì)象。$flags
:可選,控制迭代器的行為。默認(rèn)值為RecursiveTreeIterator::BYPASS_KEY
,表示跳過鍵名的輸出??捎玫臉?biāo)志有:RecursiveTreeIterator::BYPASS_KEY
:跳過鍵名的輸出。RecursiveTreeIterator::PREFIX_LEFT
:在每個(gè)節(jié)點(diǎn)前面添加前綴。RecursiveTreeIterator::PREFIX_MID_HAS_NEXT
:在每個(gè)節(jié)點(diǎn)前面添加前綴,且該節(jié)點(diǎn)后面還有兄弟節(jié)點(diǎn)。RecursiveTreeIterator::PREFIX_MID_LAST
:在每個(gè)節(jié)點(diǎn)前面添加前綴,且該節(jié)點(diǎn)為最后一個(gè)兄弟節(jié)點(diǎn)。RecursiveTreeIterator::PREFIX_END_HAS_NEXT
:在每個(gè)節(jié)點(diǎn)前面添加前綴,且該節(jié)點(diǎn)后面還有兄弟節(jié)點(diǎn)。RecursiveTreeIterator::PREFIX_END_LAST
:在每個(gè)節(jié)點(diǎn)前面添加前綴,且該節(jié)點(diǎn)為最后一個(gè)兄弟節(jié)點(diǎn)。
返回值:無返回值。
示例:
$dir = new RecursiveDirectoryIterator('/path/to/directory');
$iterator = new RecursiveIteratorIterator($dir);
$treeIterator = new RecursiveTreeIterator($iterator);
foreach ($treeIterator as $item) {
echo $item . "\n";
}
在上面的示例中,我們首先創(chuàng)建了一個(gè)RecursiveDirectoryIterator
對(duì)象用于遍歷指定目錄,然后將其傳遞給RecursiveIteratorIterator
對(duì)象,以便進(jìn)行遞歸遍歷。最后,我們使用RecursiveTreeIterator
對(duì)象對(duì)遍歷結(jié)果進(jìn)行樹狀展示,并通過遍歷該對(duì)象來輸出每個(gè)節(jié)點(diǎn)的信息。