opendir
rewinddir
Verzeichnis-Funktionen
PHP Manual

# readdir

(PHP 4, PHP 5)

readdir — Liest einen Eintrag aus einem Verzeichnis-Handle

### Beschreibung

string readdir ([ resource `$dir_handle` ] )

Gibt den Dateinamen des nächsten Files des Verzeichnisses zurück. Die Dateinamen werden in der Reihenfolge zurück gegeben, in der sie innerhalb des Filesystems angelegt wurden.

### Parameter-Liste

`dir_handle`

  Das Verzeichnis-Handle resource, das 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 Dateinamen zurück. Im Fehlerfall 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.

### Beispiele

Beispiel #1 Alle Dateien 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 inhaltlich und typgleich -- 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 "Directory handle: $handle\n";
echo "Files:\n";
/* Das ist der korrekte Weg, ein Verzeichnis zu durchlaufen. */
while (false !== ($file = readdir($handle))) {
echo "$file\n";
}
/* Dies ist der FALSCHE Weg, ein Verzeichnis zu durchlaufen. */
while ($file = readdir($handle)) {
echo "$file\n";
}
closedir($handle);
}
?>`

Beispiel #2 Listet alle Dateien des aktuellen Verzeichnisses auf und blendet dabei . und .. aus.

`<?php
if ($handle = opendir('.')) {
while (false !== ($file = readdir($handle))) {
if ($file != "." && $file != "..") {
echo "$file\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() - Öffnen eines Verzeichnis-Handles
- scandir() - Listet Dateien und Verzeichnisse innerhalb eines angegebenen Pfades auf

opendir
rewinddir
Verzeichnis-Funktionen
PHP Manual