Heim > Artikel > Backend-Entwicklung > Verwenden Sie die PHP-Funktion glob(), um Dateien anhand von Platzhalterzeichen in Dateinamen zu finden
Bei der Verarbeitung von Dateien stoßen wir häufig auf Situationen, in denen wir bestimmte Dateien finden müssen. Wenn die Anzahl der Dateien gering ist, kann die manuelle Suche verwendet werden. Wenn es sich jedoch um eine große Anzahl von Dateien handelt, wird die manuelle Suche überwältigend. Zu diesem Zeitpunkt kommt eine nützliche Funktion zum Einsatz: die Funktion glob(). Die Funktion
glob() ist eine sehr praktische Funktion in PHP, die es uns ermöglicht, Dateien und Verzeichnisse durch Angabe von Platzhalterzeichen zu finden. Die Funktion glob() kann die gefundenen Dateien auch anhand verschiedener Parameter sortieren und filtern, sodass wir schnell die benötigten Dateien unter einer großen Anzahl von Dateien finden können.
Im Folgenden beginnen wir mit der grundlegenden Verwendung der Funktion und führen nach und nach in die Verwendung der Funktion glob() ein. Die grundlegende Verwendung der Funktion
glob() ist sehr einfach. Sie hat nur einen Parameter – ein Platzhalterzeichen, das die zu findende Datei darstellt. Das Folgende ist ein Beispiel:
$files = glob('/path/to/files/*.jpg');
Das Platzhalterzeichen in diesem Beispiel ist „*.jpg“, was bedeutet, dass nach allen Dateien mit dem Suffix „.jpg“ im Verzeichnis /path/to/files/ gesucht wird. Die gefundenen Ergebnisse werden in Form eines Arrays zurückgegeben.
Wenn wir alle Dateien und Unterverzeichnisse in einem bestimmten Verzeichnis finden möchten, können wir den Platzhalter „**“ verwenden:
$files = glob('/path/to/files/**');
Auf diese Weise können wir alle Dateien und Verzeichnisse im Verzeichnis /path/to/files/ finden , einschließlich der Unterverzeichnisse, Dateien und Verzeichnisse unten.
Darüber hinaus können wir auch eckige Klammern in Wildcards verwenden, um einen Zeichensatz anzugeben:
$files = glob('/path/to/files/[abc]*');
Auf diese Weise können Sie alle Dateien finden, die mit „a“, „b“ oder „c“ beginnen.
Die grundlegende Verwendung der glob()-Funktion wird oben vorgestellt. Wir können jedoch auch Parameter festlegen, um die gefundenen Ergebnisse zu sortieren und zu filtern.
Durch Festlegen des zweiten Parameters (der den Sortiermodus angibt) können wir die gefundenen Ergebnisse sortieren. Im Folgenden sind einige häufig verwendete Sortiermodi aufgeführt:
Wenn wir beispielsweise alle Dateien mit dem Suffix „.jpg“ in umgekehrter Reihenfolge nach Namen sortieren möchten, können wir den folgenden Code verwenden:
$files = glob('/path/to/files/*.jpg', GLOB_NOSORT|GLOB_NOCHECK); rsort($files);
In diesem Beispiel verwenden wir zwei Konstanten GLOB_NOSORT und GLOB_NOCHECK, um die festzulegen Sortiermethode.
Durch Festlegen des dritten Parameters (der den Filter angibt) können wir die gefundenen Ergebnisse filtern. Hier sind einige häufig verwendete Filter:
Wenn wir beispielsweise nur Dateien mit einer Größe von 100 MB oder weniger finden müssen, können wir den folgenden Code verwenden:
$files = glob('/path/to/files/*.*'); array_filter($files, function($file) { return filesize($file) <= 100 * 1024 * 1024; });
In diesem Beispiel verwenden wir die Funktion array_filter(), um die Ergebnisse zu filtern.
Anhand der obigen Beispiele haben wir gelernt, wie man die Funktion glob() verwendet, um in PHP nach Dateien und Verzeichnissen zu suchen. Die Funktion glob() ist sehr einfach und praktisch und verfügt über viele Parameter und Verwendungsmöglichkeiten, die eine komplexere und flexiblere Dateisuche und -verarbeitung ermöglichen. In PHP-Projekten können wir die Funktion glob() wählen, um eine große Anzahl von Dateien und Verzeichnissen einfach und effizient zu verarbeiten.
Das obige ist der detaillierte Inhalt vonVerwenden Sie die PHP-Funktion glob(), um Dateien anhand von Platzhalterzeichen in Dateinamen zu finden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!