readdir

(PHP 4, PHP 5, PHP 7, PHP 8)

readdirLiest einen Eintrag aus einem Verzeichnis-Handle

Beschreibung

readdir(?resource $dir_handle = null): string|false

Gibt den Namen des nächsten Eintrags des Verzeichnisses zurück. Die Einträge werden in der Reihenfolge zurückgegeben, in der sie innerhalb des Dateisystems angelegt wurden.

Parameter-Liste

dir_handle

Die Verzeichnis-Handle-Ressource, die zuvor mit opendir() geöffnet wurde. Wenn das Verzeichnis-Handle nicht angegeben ist, wird dasjenige verwendet, das auf das zuletzt mittels opendir() geöffnete Verzeichnis zeigt.

Rückgabewerte

Gibt bei Erfolg den Namen des Eintrags zurück. Bei einem Fehler wird false zurückgegeben.

Warnung

Diese Funktion kann sowohl das boolsche false zurückliefern, als auch einen nicht-boolschen Wert, welcher zu false ausgewertet wird. Weitere Informationen entnehmen Sie bitte dem Abschnitt über die boolschen Typen. Benutzen Sie deshalb den === Operator, um den Rückgabewert dieser Funktion zu überprüfen.

Changelog

Version Beschreibung
8.0.0 dir_handle ist nun nullable (akzeptiert den null-Wert).

Beispiele

Beispiel #1 Alle Einträge eines Verzeichnisses auflisten

Bitte beachten Sie die Art und Weise, in der die Rückgabewerte von readdir() in untenstehenden Beispielen geprüft werden. Wir testen explizit, ob der Rückgabewert identisch (also den gleichen Wert und Datentyp hat - siehe Kapitel Vergleichs-Operatoren für weitere Informationen) zu false ist, andernfalls würde jeder Verzeichnis-Eintrag, dessen Name als false ausgewertet wird, das Durchlaufen der Schleife beenden (z. B. ein Verzeichnis namens "0").

<?php

if ($handle opendir('/path/to/files')) {
    echo 
"Verzeichnis-Handle: $handle\n";
    echo 
"Einträge:\n";

    
/* Dies ist der korrekte Weg, ein Verzeichnis zu durchlaufen. */
    
while (false !== ($entry readdir($handle))) {
        echo 
"$entry\n";
    }

    
/* Dies ist der FALSCHE Weg, ein Verzeichnis zu durchlaufen. */
    
while ($entry readdir($handle)) {
        echo 
"$entry\n";
    }

    
closedir($handle);
}
?>

Beispiel #2 Listet alle Einträge des aktuellen Verzeichnisses auf und blendet dabei die Verzeichnisse . und .. aus.

<?php
if ($handle opendir('.')) {
    while (
false !== ($entry readdir($handle))) {
        if (
$entry != "." && $entry != "..") {
            echo 
"$entry\n";
        }
    }
    
closedir($handle);
}
?>

Siehe auch

  • is_dir() - Prüft, ob der angegebene Dateiname ein Verzeichnis ist
  • glob() - Findet Dateinamen, die mit einem Muster übereinstimmen
  • opendir() - Öffnet ein Verzeichnis-Handle
  • scandir() - Listet Dateien und Verzeichnisse innerhalb eines angegebenen Pfades auf

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

Total Commander 11.00 (final) ist verfügbar!

Total Commander, ein beliebter Datei-Manager, hat kürzlich seine neueste Version, 11.00, veröffentlicht. Mit einer Vielzahl von neuen Funktionen und Korrekturen bietet diese Version den Benutzern ein verbessertes und optimiertes Erlebnis. ...

admin

Autor : admin
Kategorie: Software-Updates

Welche Technologien sollte ein PHP Programmierer beherrschen?

In der heutigen digitalen Welt ist die Rolle eines PHP Programmierers von großer Bedeutung. ...

admin

Autor : admin
Kategorie: Dies und Das

PHPUnit in der Version 10 erschienen

PHPUnit in der Version 10 erschienen

Das beliebte Testframeworks PHPUnit ist in der Version 10 erschienen und steht zum Download bereit ...

TheMax

Autor : TheMax
Kategorie: Software & Web-Development

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Zuverlässiger Designer & Programmierer mit langjähriger Erfahrung

Bonjour, j'ai trouvé un site qui répond probablement à votre recherche : https://adp-immo.com​

Geschrieben von alain1546 am 26.09.2023 19:52:50
Forum: Jobgesuche
Fragen zu PHP-Syntax

Dankeschön, deine Erklärungen lassen mich Beides schon einmal besser nachvollziehen. Bei 2) hatte ich mittlerweile etwas zu Namensräumen gefund ...

Geschrieben von BrotherJ am 12.09.2023 08:05:17
Forum: PHP Developer Forum
Datei Prüfung - Alles was zwischen /* und */ steht, einfärben.

In deinem Beispiel endet der Kommentar in Zeile 11. Die Zeilen 12 bis 16 sind nicht mehr eingeschlossen, denn Kommentarzeichen kann man so nicht v ...

Geschrieben von reddighamburg am 12.09.2023 00:57:14
Forum: PHP Developer Forum
Fragen zu PHP-Syntax

zu 1) Hier geht es um Typensicherheit. Das : Response sagt nichts anderes, als dass der zurückgegebene Wert in jedem Fall vom Typ Response ist. A ...

Geschrieben von reddighamburg am 12.09.2023 00:31:02
Forum: PHP Developer Forum