php – 使用DirectoryIterator对文件进行排序
发布时间:2020-12-13 13:21:35 所属栏目:PHP教程 来源:网络整理
导读:我正在为lighttpd创建一个列出 PHP5脚本的目录.在给定目录中,我希望能够列出直接子目录和文件(带有信息). 快速搜索后,DirectoryIterator似乎是我的朋友: foreach (new DirectoryIterator('.') as $file){ echo $file-getFilename() . 'br /';} 但我希望能够
我正在为lighttpd创建一个列出
PHP5脚本的目录.在给定目录中,我希望能够列出直接子目录和文件(带有信息).
快速搜索后,DirectoryIterator似乎是我的朋友: foreach (new DirectoryIterator('.') as $file) { echo $file->getFilename() . '<br />'; } 但我希望能够按文件名,日期,哑剧类型等对文件进行排序 怎么做(使用ArrayObject / ArrayIterator?)? 谢谢
以上解决方案对我不起作用.这是我的建议:
class SortableDirectoryIterator implements IteratorAggregate { private $_storage; public function __construct($path) { $this->_storage = new ArrayObject(); $files = new DirectoryIterator($path); foreach ($files as $file) { $this->_storage->offsetSet($file->getFilename(),$file->getFileInfo()); } $this->_storage->uksort( function ($a,$b) { return strcmp($a,$b); } ); } public function getIterator() { return $this->_storage->getIterator(); } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |