首頁 >後端開發 >php教程 >如何在 PHP 中遞歸列出所有子目錄中的檔案?

如何在 PHP 中遞歸列出所有子目錄中的檔案?

DDD
DDD原創
2024-11-03 14:27:30222瀏覽

How Can I Recursively List Files from All Subdirectories in PHP?

在PHP 中遞歸地列出所有子目錄中的檔案

在PHP 中,列出目錄中的所有檔案功能可以擴展為從以下位置檢索檔案遞歸子目錄。這對於組織和存取複雜目錄結構中的文件非常有價值。

解決方案:

要遞歸列出所有子目錄中的文件,您可以使用以下程式碼:

<code class="php">foreach (new RecursiveIteratorIterator(new RecursiveDirectoryIterator('.')) as $filename) {
    if ($filename->isDir()) {
        continue;
    }

    echo "$filename\n";
}</code>

解釋:

  • RecursiveDirectoryIterator: 建立一個新的遞歸目錄迭代器,迭代給定目錄中的檔案和目錄。
  • RecursiveIteratorIterator: 包裝上面的迭代器,並提供額外的過濾和處理能力。

結果:

程式碼建立一個類似陣列的結構($files),其中包含目前目錄和所有子目錄中的所有檔案。輸出將是檔案及其路徑的清單:

file.jpg
blah.word
name.fileext

其他資源:

  • [RecursiveDirectoryIterator](https://www.php .net /manual/en/class.recursivedirectoryiterator.php)
  • [RecursiveIteratorIterator](https://www.php.net/manual/en/class.recursiveiteratoriterator.php)

以上是如何在 PHP 中遞歸列出所有子目錄中的檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn