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

如何使用 PHP 遞歸列出子目錄中的檔案?

Mary-Kate Olsen
發布: 2024-11-03 17:59:29
原創
974 人瀏覽過

How to Recursively List Files in Subdirectories with PHP?

PHP:遞歸列出子目錄中的檔案

列出所有目錄中的檔案(包括子目錄),並將結果儲存在數組中, PHP 提供了多個可以協同工作的內建函數。

使用RecursiveIteratorIterator 和RecursiveDirectoryIterator

以下程式碼示範如何實作您想要的結果:

<code class="php">$directory = "foldername";

// Create a RecursiveDirectoryIterator object for the specified directory
$directoryIterator = new RecursiveDirectoryIterator($directory);

// Create a RecursiveIteratorIterator object for the directory iterator
$iterator = new RecursiveIteratorIterator($directoryIterator, RecursiveIteratorIterator::SELF_FIRST);

// Initialize an empty array to store the file names
$files = [];

// Iterate over the files in the directory
foreach ($iterator as $filename) {
    // Filter out "." and ".." directories
    if ($filename->isDir()) {
        continue;
    }

    // Add the file name to the array
    $files[] = $filename;
}</code>
登入後複製

RecursiveDirectoryIterator 類別建立一個迭代指定路徑中的檔案和目錄的物件。 RecursiveIteratorIterator 類別提供對 RecursiveIterator 物件的遞歸迭代,確保也探索子目錄。

透過過濾掉「.」和使用 isDir() 方法的「..」目錄,我們只將實際檔案加入 $files 陣列中。

PHP 文件

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

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

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板