RecursiveIteratorIterator获取子目录

时间:2015-06-22 05:46:04

标签: php

目前我正在通过php处理目录。我能够列出任何给定目录的子目录。但是,结果不是我要找的100%。下面的代码返回子目录,但另外它还返回数组中的主目录。我怎样才能返回目录的子目录?

$root = '/test';

$iter = new RecursiveIteratorIterator(
    new RecursiveDirectoryIterator($root, RecursiveDirectoryIterator::SKIP_DOTS),
    RecursiveIteratorIterator::CATCH_GET_CHILD // Ignore "Permission denied"
);

$paths = array($root);
foreach ($iter as $path => $dir) {
    if ( $dir->isDir() ) {
        $paths[] = $path;
    }
}

当前输出

Array ( [0] => /test [1] => /test/asf8 [2] => /test/some2 [3] => /test/something ) 

期望的输出

Array ( [0] => /test/asf8 [1] => /test/some2 [2] => /test/something ) 

1 个答案:

答案 0 :(得分:0)

我会改变

if ( $dir->isDir() )

if ( $dir->isDir() && $dir != $root)

删除根目录