我不想扫描目录及其子目录中的所有文件。并在数组中获取它们的路径。就像数组中目录中文件的路径一样
path -> text.txt
子目录中文件的路径为
somedirectory/text.txt
我能够扫描单个目录,但它返回所有文件和子目录,没有任何方法区分。
if ($handle = opendir('fonts/')) {
/* This is the correct way to loop over the directory. */
while (false !== ($entry = readdir($handle))) {
echo "$entry<br/>";
}
closedir($handle);
}
获取目录和子目录中的所有文件及其路径的最佳方法是什么?
最佳答案
使用 SPL 中的 DirectoryIterator 可能是最好的方法:
$it = new RecursiveIteratorIterator(new RecursiveDirectoryIterator('.'));
foreach ($it as $file) echo $file."\n";
$file
是 SPLFileInfo -目的。它的 __toString() 方法将为您提供文件名,但还有其他几种有用的方法!
有关更多信息,请参阅:http://www.php.net/manual/en/class.recursivedirectoryiterator.php
关于php - 使用php扫描目录和子目录中的文件并将其路径存储在数组中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8870731/