嗨我想獲取RecursiveDirectoryIterator類,使用FilterIterator上的擴展名工作,但由於某種原因,它僅在根目錄上迭代。如何使用PHP5遞歸顯示具有特定文件類型的文件夾和子文件夾RecursiveDirectoryIterator類
我的代碼是這樣的。
class fileTypeFilter extends FilterIterator
{
public function __construct($path)
{
parent::__construct(new RecursiveDirectoryIterator($path));
}
public function accept()
{
$file = $this->getInnerIterator()->current();
return preg_match('/\.php/i', $file->getFilename());
}
}
$it = new RecursiveDirectoryIterator('./');
$it = new fileTypeFilter($it);
foreach ($it as $file)
{
echo $file;
}
我的目錄結構是這樣的。
-Dir1
--file1.php
--file2.php
-Dir2
--file1.php
等等等等
但正如我之前所說的類不遞歸遍歷整個目錄結構,並只盯着根。
問題是,如何使用基本的RescursiveDirectoryIterator來顯示文件夾,然後運行FilterIterator來只顯示這些導航器中的php文件?
乾杯
謝謝克里斯,很想挑選你的大腦這個東西! :) – Jared 2010-03-30 20:18:26