PHP Dokumentation: Function glob
12. Januar 2010 von werner
glob
(PHP 4 >= 4.3.0, PHP 5)
glob — Findet Dateinamen, die mit einem Muster übereinstimmen
Beschreibung
glob() findet Dateipfade, die mit dem angegebenen Muster pattern übereinstimmen. Die Übereinstimmung wird nach den gleichen Regeln geprüft, wie in der glob()-Funktion der C-Bibliothek und entspricht weitgehend den Regeln in den üblichen Kommandozeilen-Shells.
Parameter-Liste
- pattern
Das Suchmuster. Parameter- und Tilde-Ersetzung findet nicht statt.
- flags
Mögliche Flags:
- GLOB_MARK – Fügt jedem zurückgegebenen Verzeichnis einen Slash hinzu
- GLOB_NOSORT – Gibt Dateinamen unsortiert in der Reihenfolge ihrer Verzeichniseinträge zurück
- GLOB_NOCHECK – Gibt das Suchmuster zurück, wenn keine übereinstimmende Dateinamen gefunden wurden
- GLOB_NOESCAPE – Backslashes maskieren keine Metazeichen
- GLOB_BRACE – {a,b,c} prüft auf 'a', 'b', oder 'c'
- GLOB_ONLYDIR – Gibt nur übereinstimmende Verzeichnisnamen zurück
- GLOB_ERR – Anhalten bei Lesefehlern (wie nicht-lesbaren Verzeichnis), standardmäßig werden Fehler ignoriert
Rückgabewerte
Gibt ein Array mit den übereinstimmenden Datei- und Verzeichnisnamen zurück. Wenn keine Treffer gefunden wurden, wird ein leeres Array zurückgegeben und im Fehlerfall FALSE.
Hinweis: Auf manchen Systemen ist es nicht möglich, zwischen einer leeren Ergebnismenge und einem aufgetretenen Fehler zu unterscheiden.
Changelog
| Version | Beschreibung |
|---|---|
| 5.1.0 | GLOB_ERR wurde hinzugefügt |
| 4.3.3 | GLOB_ONLYDIR ist nun auch unter Windows und anderen Systemen, die nicht die GNU-C-Bibliothek benutzen |
Beispiele
Beispiel #1 Einfacher Ersatz von opendir() etc.
<?php
foreach (glob("*.txt") as $filename) {
echo "$filename - Größe: " . filesize($filename) . "\n";
}
?>Das oben gezeigte Beispiel erzeugteine ähnliche Ausgabe wie:
funclist.txt - Größe: 44686funcsummary.txt - Größe: 267625quickref.txt - Größe: 137820
Anmerkungen
Hinweis: Diese Funktion kann nicht mitentfernten Dateien arbeiten, dader Zugriff auf die Datei, die bearbeitet werden soll, über das Dateisystem desServers möglich sein muss.
Hinweis: Diese Funktion ist nicht auf allen Systemen verfügbar (z.B. nicht auf alten Sun-OS-Versionen).
Hinweis: Das GLOB_BRACE-Flag ist auf einigen nicht-GNU-Systemen (wie Solaris) nicht verfügbar.
Siehe auch
- opendir() – Öffnen eines Verzeichnis-Handles
- readdir() – Liest einen Eintrag aus einem Verzeichnis-Handle
- closedir() – Schließen eines Verzeichnis-Handles
- fnmatch() – Match filename against a pattern