标签: php file iterator filesystems readdir
所以我对DirectoryIterator的工作方式感到有点困惑。
假设我有一个包含100000个文件的目录。使用readdir()函数,我可以轻松地遍历整个文件列表,而不会有任何性能命中,因为该函数在当时为我提供了一个文件。
DirectoryIterator是以相同的方式工作,还是在构造对象时读取整个目录,并将其存储到某个内部数组(例如scandir())?
通常它不应该这样做,因为它是一个迭代器并且有next()方法等,但与readdir相比它看起来相当慢,所以我想我应该要求确定。