【发布时间】:2010-05-13 02:44:48
【问题描述】:
如何对文件夹中的大量文件进行分页?
我在 PHP 文档中看不到任何提到任何指定“偏移量”的方法的函数。 glob() 和 scandir() 都只是简单地返回文件夹中的所有文件,恐怕对于一个巨大的目录来说这不是一个好主意。
有没有比简单地检查所有文件并删除前 X 个文件更好的方法?请注意,我希望有递归遍历和使用 glob() 模式的选项。
编辑:我看过很多 LimitIterator、GlobIterator 和 RecursiveDirectoryIterator。它们看起来都不错,但如果我要将它们组合起来,我什至不知道从哪里开始(PHP SPL 文档非常稀疏)。我可能只是在想这个问题。
【问题讨论】:
-
多大是多大?您是否完全尝试过 SPL 课程,还是不知道从哪里开始?
-
目前该文件夹有大约 2000 个图标,因此需要分页。我尝试使用 SPL 迭代器,但文档太少了。我的 PHP 版本也不支持 GlobIterator,所以我想我必须自己编写版本。是扩展现有迭代器之一还是手动实现其中一个接口更好?
-
您使用的是哪个版本的 PHP?假设熟悉这些(过滤)迭代器是如何工作的,那么编写 GlobIterator 并不难。如果您想在这里来回回想想法,请随意,或者您可以给我发电子邮件(在此处将@php.net 后缀为我的用户名)。
标签: php file filesystems pagination glob