什么决定了PHP的FilesystemIterator的顺序,我可以更改它的顺序吗?

PHP遍历目录中的文件

$it = new FilesystemIterator('/path/of/files/to/iterate/over');
foreach ($it as $fileinfo) {
  echo $fileinfo->getFilename();
}

但是,文件在这里的处理顺序是什么?我做了一些测试,但似乎无法理解PHP使用的顺序.至少每次都使用相同的顺序,但是按字母顺序,mtime,ctime或atime都不相同.我尝试通过创建一些具有不同名称的空文件进行尝试,这些文件既未按时间顺序创建,也未按字母顺序排序.

FilesystemIterator使用什么顺序?又为什么呢?我可以更改订单吗?

解决方法:

如此处所述DirectoryIterator sort,迭代器进行迭代.您将需要构建一个数组并对其进行排序.

迭代器是一种设计模式,用于遍历容器上的元素.更多内容:Iterator pattern

上一篇:java-捕获InputMismatchException,直到它正确为止


下一篇:c#-通过简化循环在循环内循环