Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann ich Dateien aus allen Unterverzeichnissen in PHP rekursiv auflisten?

Wie kann ich Dateien aus allen Unterverzeichnissen in PHP rekursiv auflisten?

DDD
DDDOriginal
2024-11-03 14:27:30171Durchsuche

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

Dateien rekursiv aus allen Unterverzeichnissen in PHP auflisten

In PHP kann die Funktion „Alle Dateien in einem Verzeichnis auflisten“ erweitert werden, um Dateien daraus abzurufen Unterverzeichnisse rekursiv. Dies kann für die Organisation und den Zugriff auf Dateien in komplexen Verzeichnisstrukturen nützlich sein.

Lösung:

Um Dateien aus allen Unterverzeichnissen rekursiv aufzulisten, können Sie den folgenden Code verwenden:

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

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

Erläuterung:

  • RecursiveDirectoryIterator: Erstellt einen neuen rekursiven Verzeichnisiterator, der Dateien und Verzeichnisse in einem bestimmten Verzeichnis durchläuft.
  • RecursiveIteratorIterator: Umschließt den obigen Iterator und bietet zusätzliche Filter- und Verarbeitungsfunktionen.

Ergebnis:

Der Code erstellt eine Array-ähnliche Struktur ($files), die alle Dateien aus dem aktuellen und allen Unterverzeichnissen enthält. Die Ausgabe ist eine Liste der Dateien und ihrer Pfade:

file.jpg
blah.word
name.fileext

Zusätzliche Ressourcen:

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

Das obige ist der detaillierte Inhalt vonWie kann ich Dateien aus allen Unterverzeichnissen in PHP rekursiv auflisten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn