提供了一个用于查看文件系统目录内容的简单接口
创建迭代器
// 根据$path创建一个迭代器
$directoryIterator = new DirectoryIterator($path);
迭代
// 获取迭代器当前值,是一个DirectoryIterator对象
$directoryIterator->current();
// 获取当前项的索引
$directoryIterator->key();
// 将迭代器前进一项
$directoryIterator->next();
// 将迭代器倒回开头
$directoryIterator->rewind();
// 将迭代器指定到$position索引的位置
$directoryIterator->seek($position);
// 迭代器foreach循环时会先触发current方法获取当前项,下次循环前触发next方法
获取文件信息
// 获取当前项的文件类型,file,link,dir
$directoryIterator->getType();
// 获取当前项的基本名称,指定$suffix时获取的名称中去除$suffix
$directoryIterator->getBasename($suffix);
// 获取当前项扩展名
$directoryIterator->getExtension();
// 获取当前项名
$directoryIterator->getFilename();
// 获取当前项扩路径
$directoryIterator->getPath();
// 获取当前项扩展名和文件名
$directoryIterator->getPathname();
// 获取当前项字节大小
$directoryIterator->getSize();
// 获取当前项最后访问时间,unix时间戳
$directoryIterator->getATime();
// 获取当前项最后修改时间,unix时间戳
$directoryIterator->getMTime();
验证读写
// 验证当前项是否可读
$directoryIterator->isReadable();
// 验证当前项是否可写
$directoryIterator->isWritable();
// 验证当前项是否可执行
$directoryIterator->isExecutable();
验证文件
// 判断当前项是否为有效文件、目录
$directoryIterator->valid();
// 判断当前项是否为目录
$directoryIterator->isDir();
// 判断当前项是否为目录, .或者为..
$directoryIterator->isDot();
// 判断当前项是否为常规文件
$directoryIterator->isFile();
// 判断当前项是否为有符号连接
$directoryIterator->isLink();