(PHP 4 >= 4.3.0, PHP 5, PHP 7)
glob — Findet Dateinamen, die mit einem Muster übereinstimmen
$pattern
[, int $flags
= 0
] )
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.
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. Wenn dieses Flag
nicht verwendet wird, werden die Pfadnamen alphabetisch sortiert
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
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.
Version | Beschreibung |
---|---|
5.1.0 |
GLOB_ERR wurde hinzugefügt
|
Beispiel #1 Einfacher Ersatz von opendir() etc.
<?php
foreach (glob("*.txt") as $filename) {
echo "$filename - Größe: " . filesize($filename) . "\n";
}
?>
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
funclist.txt - Größe: 44686 funcsummary.txt - Größe: 267625 quickref.txt - Größe: 137820
Hinweis: Diese Funktion kann nicht mit entfernten Dateien arbeiten, da der Zugriff auf die Datei, die bearbeitet werden soll, über das Dateisystem des Servers 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.