RecursiveDirectoryIterator仅扫描1级

时间:2011-08-26 21:43:28

标签: php

我怎样才能使用ilke RecursiveDirectoryIterator来显示第一级目录而不是子目录。

,例如

/folder
  |-- folder-1
  |-- folder-2
    |-- sub-folder-1
    | -- subfolder-2

我只想显示文件夹1和文件夹2的文件夹名称(以及以后可能动态添加的任何其他文件夹),而不是任何文件。

最后,我想将每个结果推送到像这样的数组

$clusters = new DirectoryIterator("/agents/");
        $cluster_array = array();

        foreach ($clusters as $fileinfo) {
            if ($fileinfo != "." && $fileinfo != ".." && $fileinfo != "conf") {
                array_push($cluster_array, $fileinfo);
            }
        }
        print_r($cluster_array);

编辑:但数组看起来像这样

Array ( [0] => DirectoryIterator Object ( [pathName:SplFileInfo:private] => [glob:DirectoryIterator:private] => [subPathName:RecursiveDirectoryIterator:private] => ) )

但如果我在$fileinfo内回显foreach它显示cluster_1这是我想要的,但由于某种原因,它不会被推入数组。

1 个答案:

答案 0 :(得分:5)

您似乎应该使用DirectoryIterator类。

查看http://www.php.net/manual/en/class.directoryiterator.php