(PHP 4, PHP 5, PHP 7, PHP 8)
readdir — Liest einen Eintrag aus einem Verzeichnis-Handle
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.
Gibt bei Erfolg den Namen des Eintrags zurück. Bei einem Fehler wird false
zurückgegeben.
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.
Version | Beschreibung |
---|---|
8.0.0 | dir_handle ist nun nullable (akzeptiert den null -Wert). |
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";
while (false !== ($entry = readdir($handle))) {
echo "$entry\n";
}
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);
}
?>