Dieser Artikel stellt hauptsächlich die Methode der Stapeländerung von Dateinamen in PHP vor und analysiert die Prinzipien und Implementierungstechniken der PHP-Rekursion, Durchquerung und Änderung von Dateien und Verzeichnissen in Form von Beispielen.
Das Beispiel in diesem Artikel beschreibt die Methode zur Stapeländerung von Dateinamen in PHP. Teilen Sie es als Referenz mit allen. Die Details lauten wie folgt:
Hier verwenden wir ein von Battlefield geschriebenes Beispiel, um die Ideen und Vorsichtsmaßnahmen für die Verwendung von PHP zur Stapeländerung von Dateinamen im Detail zu analysieren.
Anhand dieses Beispiels werden Sie sehen, Wie PHP bestimmt, ob ein Pfad ein Verzeichnis ist, wie PHP verwendet wird, um den Dateinamen und die Dateierweiterung im Pfad zu erhalten, und die grundlegende Anwendung der Zufallsfunktion Rand, Und der Kerninhalt dieses Programms ist die grundlegende Anwendung rekursiver Funktionen .
Programmfunktionen: Verwenden Sie PHP-Verzeichnis- und Dateifunktionen, um alle Dateien und Ordner im vom Benutzer angegebenen Verzeichnis zu durchsuchen und die Dateinamen zu ändern.
Bestimmen Sie zunächst die Vom Benutzer angegebener Name Ist das Verzeichnis ein legales Verzeichnis?
Wir ändern den Dateinamen nur im engeren Sinne (ausgenommen Verzeichnisse), daher müssen wir im Programm feststellen, ob es sich um ein Verzeichnis handelt Wenn Sie ein Verzeichnis erstellen, öffnen wir das Verzeichnis und erreichen so eine Iteration durch alle Dateien im Verzeichnis. Wenn nicht, ändern wir den ursprünglichen Dateinamen durch einen zufälligen Namen (es ist nicht wissenschaftlich, Zufallszahlen als Namen zu verwenden, aber das ist nicht unser Fokus).
Das spezifische Programm lautet wie folgt:
<?php //利用PHP目录和文件函数遍历用户给出目录的所有的文件和文件夹,修改文件名称 function fRename($dirname){ if(!is_dir($dirname)){ echo "{$dirname}不是一个有效的目录!"; exit(); } $handle = opendir($dirname); while(($fn = readdir($handle))!==false){ if($fn!='.'&&$fn!='..'){ $curDir = $dirname.'/'.$fn; if(is_dir($curDir)){ fRename($curDir); } else{ $path = pathinfo($curDir); $newname = $path['dirname'].'/'.rand(0,100).'.'.$path['extension']; rename($curDir,$newname); echo $curDir.'---'.$newname."<br>"; } } } } //给出一个目录名称调用函数 fRename('pl'); ?>
Programmanalyse:
In Zeile 4 Wir verwenden die Funktion is_dir, um festzustellen, ob das vom Benutzer angegebene Verzeichnis ein gültiger Verzeichnisname ist. Wenn Sie es einfach auf den Server stellen möchten, müssen Sie die Eingabedaten überprüfen - zum Beispiel, ob dieses Verzeichnis von Benutzern geändert werden darf usw.
Beachten Sie, dass die Beurteilung in Zeile 9 der Funktion anhand der Kongruenz beurteilt werden muss (PHP-Kongruenzsymbol === drei Gleichheitszeichen). , nicht kongruent! == ein Ausrufezeichen (zwei Gleichheitszeichen), andernfalls wird das Programm unerwartet beendet, wenn es eine Datei mit dem Namen 0 (Null) gibt. Zeile 12, wenn die gelesene Datei a ist Verzeichnis, rufen Sie hier die Funktion selbst auf, implementieren Sie die Rekursion der Funktion; achten Sie auf die Verwendung der Pathinfo-Funktion in Zeile 16. Diese Funktion gibt ein Array mit drei Elementen zurück:
Der Verzeichnisname des Dirname-Pfads, der Basisname-Pfad. Enthält den Namen der Datei und die Erweiterung der Erweiterungsdatei. Informationen zur spezifischen Verwendung dieser Funktion finden Sie in den entsprechenden Teilen des Handbuchs.
In Zeile 17 des Programms wird die Zufallszahlenfunktion rand von PHP verwendet. Dies ist eine grundlegende Zufallsfunktion. Weitere Informationen zu Zufallsfunktionen finden Sie im Handbuch dieser Website http://shouce.jb51.net /php5/.
Hinweis: Stellen Sie sicher, dass der mit der PHP-Readdir-Funktion gelesene Dateiname „.“ und „..“ ist. Das ist sehr wichtig, warum? Sie können es versuchen!
Das Obige ist der gesamte Inhalt dieses Artikels, ich hoffe, dass er für das Studium aller hilfreich sein wird.
Verwandte Empfehlungen:Datei ändern
Fall der Upload-GrößeInhaltphp, wie man Datei
Inhaltändert >
Das obige ist der detaillierte Inhalt vonSo ändern Sie Dateinamen in PHP stapelweise. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!