scandir
(PHP 5)
scandir — Listet Dateien und Verzeichnisse innerhalb eines angegebenen Pfades auf
Beschreibung
$directory
[, int $sorting_order = SCANDIR_SORT_ASCENDING
[, resource $context
]] )
Gibt ein Array aus Dateien und Verzeichnissen des aktuellen
directory wieder.
Parameter-Liste
-
directory -
Das zu untersuchende Verzeichnis.
-
sorting_order -
Standardmäßig ist die Sortierreihenfolge alphabetisch in aufsteigender Reihenfolge. Wenn der optionale Parameter
sorting_orderaufSCANDIR_SORT_DESCENDINGgesetzt wird, ist die Sortierreihenfolge alphabetisch absteigend. Wenn er aufSCANDIR_SORT_NONEgesetzt wird, ist das Ergebnis unsortiert. -
context -
Für die Beschreibung des
context-Parameters konsultieren Sie bitte das Kapitel Streams des Manuals.
Rückgabewerte
Gibt bei Erfolg ein Array von Dateinamen zurück, im Fehlerfall
FALSE. Wenn directory kein Verzeichnis ist, wird
der boolsche Wert FALSE zurück gegeben und ein Fehler vom Type
E_WARNING erzeugt.
Changelog
| Version | Beschreibung |
|---|---|
| 5.4.0 |
sorting_order
Konstanten wurden hinzugefügt.
Jeder Wert ungleich 0 bewirkte absteigende Reihenfolge in vorherigen
Versionen. Also verwenden Sie 0 für aufsteigende
und 1 für absteigende Reihenfolge für alle PHP
Versionen. Eine Möglichkeit für das
SCANDIR_SORT_NONE
Verhalten gab es vor PHP 5.4.0 nicht.
|
Beispiele
Beispiel #1 Ein einfaches scandir()-Beispiel
<?php
$dir = '/tmp';
$files1 = scandir($dir);
$files2 = scandir($dir, 1);
print_r($files1);
print_r($files2);
?>
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
Array
(
[0] => .
[1] => ..
[2] => bar.php
[3] => foo.txt
[4] => somedir
)
Array
(
[0] => somedir
[1] => foo.txt
[2] => bar.php
[3] => ..
[4] => .
)
Beispiel #2 PHP 4-Alternativen zu scandir()
<?php
$dir = "/tmp";
$dh = opendir($dir);
while (false !== ($filename = readdir($dh))) {
$files[] = $filename;
}
sort($files);
print_r($files);
rsort($files);
print_r($files);
?>
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
Array
(
[0] => .
[1] => ..
[2] => bar.php
[3] => foo.txt
[4] => somedir
)
Array
(
[0] => somedir
[1] => foo.txt
[2] => bar.php
[3] => ..
[4] => .
)
Anmerkungen
Mit dieser Funktion können Sie eine URL als Dateinamen verwenden, falls Sie fopen wrappers ermöglicht haben. Mehr Details dazu, wie Sie den Dateinamen angeben müssen finden Sie bei fopen(). Eine Liste der unterstützten URL Protokolle, die Fähigkeiten der verschiedenen Wrapper, Hinweise zu deren Verwendung und Informationen zu den eventuell vorhandenen vordefinierten Variablen finden Sie unter Unterstützte Protokolle and Wrappers.