Aktueller Standort: Startseite> Neueste Artikel> Informationsberechnung des PHP -Ordners: Zählen Sie die Anzahl der Dateien, Ordner und Größe

Informationsberechnung des PHP -Ordners: Zählen Sie die Anzahl der Dateien, Ordner und Größe

gitbox 2025-06-18

1. Berechnen Sie die Informationen des angegebenen Ordners

In PHP können wir Dateisystemfunktionen verwenden, um die Informationen eines angegebenen Ordners einschließlich der Anzahl der Ordner, der Anzahl der Dateien und der Größe des Ordners zu berechnen. Im rekursiven Modus können wir alle Dateien und Unterordner im Ordner durchzusetzen und relevante Daten zu zählen.

1.1 rekursiv durchquerte Ordner

Wir müssen eine rekursive Funktion schreiben, um alle Dateien und Unterordner im Ordner durchzusetzen. Diese Funktion enthält einen Ordnerpfad als Parameter und zählt die Anzahl der Ordner, Dateien und Ordnergrößen dort.

Hier ist der PHP -Code zum rekursiven Durchqueren von Ordnern:

 function getFolderInfo($folderPath) {
    $folderCount = 0;  // Anzahl der Ordner
    $fileCount = 0;    // Anzahl der Dateien
    $folderSize = 0;   // Ordnergröße

foreach ($files as $file) {
    if ($file == '.' || $file == '..') {  // Ignorieren Sie das aktuelle Verzeichnis und das vorherige Verzeichnis
        continue;
    }

    $filePath = $folderPath . '/' . $file;  // Der vollständige Pfad zu einer Datei oder einem Unterordner

    if (is_dir($filePath)) {  // Wenn es sich um einen Ordner handelt
        $folderCount++;  // Anzahl der Ordner加1
        $subFolderInfo = getFolderInfo($filePath);  // Rekursiv Informationen über Unterordner erhalten
        $folderCount += $subFolderInfo['folderCount'];  // 累加子Anzahl der Ordner
        $fileCount += $subFolderInfo['fileCount'];    // 累加Anzahl der Dateien
        $folderSize += $subFolderInfo['folderSize'];  // 累加Ordnergröße
    } else {  // Wenn es sich um eine Datei handelt
        $fileCount++;  // Anzahl der Dateien加1
        $folderSize += filesize($filePath);  // Ordnergröße加上文件大小
    }
}

return [
    'folderCount' => $folderCount,
    'fileCount' => $fileCount,
    'folderSize' => $folderSize
];

}

Im Code initialisieren wir zunächst die Anzahl der Ordner, Dateien und Ordnergröße auf Null. Verwenden Sie dann die Funktion "scandir", um alle Dateien und Unterordner im Ordner zu erhalten. Als nächstes durchqueren Sie jede Datei und jeden Unterordner, bestimmen Sie ihre Typen und führen Sie die entsprechende Verarbeitung durch.

Wenn es sich um einen Ordner handelt, rufen Sie rekursiv "GetFolderinfo" auf, um die Unterordnerinformationen zu erhalten und die Statistiken des Unterordners in die Statistiken des aktuellen Ordners hinzuzufügen. Wenn es sich um eine Datei handelt, fügen Sie ihre Größe direkt zur Gesamtgröße des Ordners hinzu.

1.2 Statistiken der Informationen des angegebenen Ordners

Um die Informationen des angegebenen Ordners zu zählen, können wir die Funktion "Get -olerinfo" aufrufen und in den Pfad des Ordners übergeben.

 $folderPath = '/path/to/folder';  // Geben Sie den Pfad zum Ordner an
$folderInfo = getFolderInfo($folderPath);  // Ordnerinformationen erhalten
$folderCount = $folderInfo['folderCount'];  // Anzahl der Ordner
$fileCount = $folderInfo['fileCount'];    // Anzahl der Dateien
$folderSize = $folderInfo['folderSize'];  // Ordnergröße

Geben Sie in diesem Code zunächst den Ordnerpfad an und rufen Sie dann die Funktion "getFolderInfo" auf, um die Statistik des Ordners zu erhalten. Schließlich speichern wir das Ergebnis in der entsprechenden Variablen.

2. Beispiel

Hier ist ein Beispiel, das zeigt, wie der obige Code verwendet wird, um Informationen für einen angegebenen Ordner zu berechnen:

 $folderPath = '/path/to/folder';  // Geben Sie den Ordnerpfad an
$folderInfo = getFolderInfo($folderPath);  // Ordnerinformationen erhalten
$folderCount = $folderInfo['folderCount'];  // Anzahl der Ordner
$fileCount = $folderInfo['fileCount'];    // Anzahl der Dateien
$folderSize = $folderInfo['folderSize'];  // Ordnergröße
<p>echo "Anzahl der Ordner:" . $folderCount . "\n";  // 输出Anzahl der Ordner<br>
echo "Anzahl der Dateien:" . $fileCount . "\n";      // 输出Anzahl der Dateien<br>
echo "Ordnergröße:" . $folderSize . " bytes\n";  // Gesamtausgangsordnergröße

Unter der Annahme, dass Sie die Informationen des Ordners "/path/to/order" nach der Ausführung des Codes zählen möchten, geben Sie ein ähnliches Ergebnis aus wie folgt:

 Anzahl der Ordner:3
Anzahl der Dateien:10
Ordnergröße:123456789 bytes

Die Ausgabe zeigt, dass der Ordner `/path/to/order` 3 Unterordner und 10 Dateien mit einem Gesamt -Fußabdruck von 123456789 -Bytes enthält.

3. Zusammenfassung

Durch rekursive Methoden und Dateisystemfunktionen erleichtert PHP die Ordnerdetails sehr einfach. Mit dem obigen Code können wir die Anzahl der Dateien, Ordner und die Gesamtordnergröße des angegebenen Ordners genau zählen. Dies ist sehr hilfreich für das Dateimanagement und die Optimierung der Nutzung des Festplattenraums.