A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

* 目录迭代器:DirectoryInterator

* 目录递归迭代器:RecursiveDirectoryIterator

* 第一种方式: DirectorInterator:

* 第一步: 实例化目录对象

* 第二步: 遍历目录

1
2
3
4
5
6
7
8
9
10
11
12
13
$dir = new DirectoryIterator('../0416');
foreach ($dir as $file) {
// print $file->getPathname()."<br>";
// print nl2br($file->getPathname()."\n");
//如果不想显示那个./..目录文件,可以做一个判断,只显示普通文件
// if($file->isFile()){  //除./..外,目录文件也会过滤掉
// print $file->getPathname()."<br>";
// }
if(!$file->isDot()){  //仅过滤掉点目录文件,目录仍保留
print $file->getPathname()."<br>";
}
}
echo '<hr>';

//发现没有将子目录的遍历出来,实际开发中,我们经常需要获取到全部的文件信息

* 第二种方式:

* 1. RecursiveDirectoryIterator 递归目录迭代器

* 2. RecursiveIteratorIterator 重复递归迭代器

1
2
3
4
5
6
7
8
$dir = new RecursiveDirectoryIterator('../0416');
foreach (new RecursiveIteratorIterator($dir) as $file) {
// print $file->getPathname()."<br>";
if ($file->isFile()) {  //只显示文件     
print $file->getPathname()."<br>";
     }
}
echo '<hr>';


1 个回复

倒序浏览
奈斯,感谢分享
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马