如何从多个不同的目录中检索所有文本文件?

时间:2015-07-07 17:33:29

标签: php glob

您可能听说过glob方法,但只设法从包含该方法的文件所在的目录中检索文件 - 只有一个目录。

这是我正在使用的代码示例:

<?php

foreach (glob("*.txt") as $filename) 
{
    $time = filemtime($filename);
    $files[$time] = $filename;
}

krsort($files);

foreach ($files as $file) {
echo $file;

}

?>

这里发生的是检索当前目录中的所有文本文件,然后按修改日期的顺序对它们进行排序,然后将其回显到页。

问题在于我并不想从一个目录中检索文本文件。

我如何更改这个以便我可以从一个页面中检索我选择的多个目录中的文件 - 所以我可以将多个目录中的所有文本文件回显到一个页面上而不只是回显一个目录中的文本文件?

我相信我需要将我想要的所有目录 glob 存储到一个数组中,但我不知道如何检索它。

1 个答案:

答案 0 :(得分:1)

以上是我在上面评论中从页面中窃取的一个示例

<?php

$Directory = new RecursiveDirectoryIterator('path/to/project/');
$Iterator = new RecursiveIteratorIterator($Directory);
$Regex = new RegexIterator($Iterator, '/^.+\.txt$/i', RecursiveRegexIterator::GET_MATCH);

?>