Heim > Artikel > Backend-Entwicklung > Beispiel für die Verwendung der PHP-glob()-Funktion: Alle Dateien in einem angegebenen Ordner durchsuchen
PHP glob()-Funktionsverwendungsbeispiel: Alle Dateien in einem bestimmten Ordner durchsuchen
In der PHP-Entwicklung ist es häufig erforderlich, alle Dateien in einem bestimmten Ordner zu durchsuchen, um einen Stapelbetrieb oder das Lesen von Dateien zu erreichen. Um diese Anforderung zu erfüllen, wird die glob()-Funktion von PHP verwendet. Die Funktion
glob() kann die Pfadinformationen aller Dateien im angegebenen Ordner abrufen, die die Bedingungen erfüllen, indem sie ein Platzhalter-Übereinstimmungsmuster angeben. In diesem Artikel zeigen wir, wie Sie mit der Funktion glob() alle Dateien in einem bestimmten Ordner durchlaufen.
1. Grundlegende Verwendung der glob()-Funktion
Die grundlegende Syntax der glob()-Funktion lautet wie folgt:
array glob ( string $pattern [, int $flags = 0 ] )
Unter diesen stellt der Parameter $pattern das passende Platzhaltermuster dar und der Parameter $flags wird verwendet um das passende Muster anzugeben.
Rückgabewert: Wenn der Abgleich erfolgreich ist, wird ein Array mit den Abgleichsergebnissen zurückgegeben. Wenn ein Fehler auftritt, wird false zurückgegeben.
Das Folgende ist ein einfaches Beispiel für das Durchlaufen aller Dateien in einem bestimmten Ordner (z. B. dem Verzeichnis „Uploads“):
$dir = "uploads/"; $array = glob($dir."*"); print_r($array);
Der obige Code gibt die Pfadinformationen aller Dateien im angegebenen Ordner aus, z. B.:
Array ( [0] => uploads/file1.txt [1] => uploads/file2.txt [2] => uploads/picture1.jpg [3] => uploads/picture2.jpg )
2. Verwenden Sie ein Platzhaltermuster, um bestimmte Dateien abzugleichen.
Wenn Sie Dateien eines bestimmten Typs abgleichen müssen, können wir dazu ein Platzhaltermuster verwenden. Wenn wir beispielsweise alle Bilddateien (.jpg, .png usw.) in einem bestimmten Ordner durchsuchen müssen, können wir das Platzhalterzeichen .jpg oder .png verwenden, um den Dateinamen abzugleichen.
Der folgende Code zeigt, wie alle Dateien mit der Erweiterung .jpg abgeglichen werden:
$dir = "uploads/"; $array = glob($dir."*.jpg"); print_r($array);
Der obige Code gibt die Pfadinformationen aller Dateien mit der Erweiterung .jpg im Upload-Verzeichnis aus.
3. Einige Dateien ignorieren
Wenn Sie Dateien oder Ordner bestimmter Typen ignorieren möchten, können Sie dazu den Platzhaltermodus verwenden. Beispielsweise können wir das Platzhaltermuster ! verwenden, um bestimmte Dateien oder Ordner aus den Übereinstimmungsergebnissen zu ignorieren.
Der folgende Code zeigt, wie man die Datei mit dem Namen „ignore.jpg“ im Upload-Verzeichnis ignoriert:
$dir = "uploads/"; $array = glob($dir."*.jpg"); $array = array_diff($array, glob($dir."ignore.jpg")); print_r($array);
Der obige Code gibt die Pfadinformationen aller Dateien mit der Erweiterung .jpg im Upload-Verzeichnis aus, ignoriert jedoch die Datei mit dem Namen „ignore.jpg“.
4. Sortieren Sie die Übereinstimmungsergebnisse
Wenn Sie die Übereinstimmungsergebnisse sortieren müssen, können Sie den Parameter $flags in der Funktion glob() übergeben und den entsprechenden Sortiermodus festlegen.
Mit den Flags GLOB_BRACE |. GLOB_NOSORT | wird beispielsweise ein Modus zum Ausschließen von Ergebnissen aktiviert:
$dir = "uploads/"; $array = glob($dir."{*.jpg,*.png}", GLOB_BRACE | GLOB_NOSORT | GLOB_MARK); print_r($array);
Der obige Code gibt die Pfadinformationen aller Dateien mit den Erweiterungen .jpg und .png im Upload-Verzeichnis aus und hat ausgeschlossen Alle Verzeichnisse und die Ergebnisse wurden sortiert.
Zusammenfassend lässt sich sagen, dass die glob()-Funktion eine praktische PHP-Dateidurchlauffunktion ist, die problemlos alle Dateien im angegebenen Ordner bearbeiten kann. Unabhängig davon, ob es sich um eine einfache Dateidurchquerung oder eine komplexe Dateiverarbeitung handelt, kann sie über die Funktion glob () implementiert werden.
Das obige ist der detaillierte Inhalt vonBeispiel für die Verwendung der PHP-glob()-Funktion: Alle Dateien in einem angegebenen Ordner durchsuchen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!