Php 只获取主文件夹,不获取子文件夹

Php 只获取主文件夹,不获取子文件夹,php,directory,subdirectory,recursiveiterator,Php,Directory,Subdirectory,Recursiveiterator,我想获取没有子文件夹的主文件夹,代码如下: $dir = new RecursiveDirectoryIterator($admin['data_folder_main'], FilesystemIterator::SKIP_DOTS); $it = new RecursiveIteratorIterator($dir, RecursiveIteratorIterator::SELF_FIRST); $it->setMaxDepth(1); foreach($it AS $fileinf

我想获取没有子文件夹的主文件夹,代码如下:

$dir = new RecursiveDirectoryIterator($admin['data_folder_main'], FilesystemIterator::SKIP_DOTS);
$it = new RecursiveIteratorIterator($dir, RecursiveIteratorIterator::SELF_FIRST);
$it->setMaxDepth(1);

foreach($it AS $fileinfo) {
    if($fileinfo->isDir() AND !$it->isDot()) {
        echo $it->getSubPathName().'<br>';
    }
}

RecursiveDirectoryIterator
RecursiveIteratoryIterator
是否具有表示“这是主文件夹”的函数?还是我必须使用一些变通代码?如果是,代码会是什么样子?

不用担心!我是这样修复的:

$dir = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($admin['data_folder_main']), FilesystemIterator::SKIP_DOTS, RecursiveIteratorIterator::SELF_FIRST);

foreach($dir as $name => $object) {
    if($dir->isDir() AND !$dir->isDot()) {
        echo basename($name);
    }
}

当您只对第一级感兴趣时,为什么要使用递归迭代器?你能举个例子说明你想完成什么吗?
$dir = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($admin['data_folder_main']), FilesystemIterator::SKIP_DOTS, RecursiveIteratorIterator::SELF_FIRST);

foreach($dir as $name => $object) {
    if($dir->isDir() AND !$dir->isDot()) {
        echo basename($name);
    }
}