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);
}
}