Dateigröße mit PHP ermitteln
[geschrieben am 25.11.2008]
Für z.B. Dateilisten oder Verzeichnisse für Ordnerinhalte benötigt man oft die Angabe der Dateigröße einer oder mehrerer Dateien.
Die Dateigröße kann nur mittels PHP ausgelesen werden, wenn die entsprechende Datei bereits auf dem Webserver liegt bzw. hochgeladen wurde.
PHP hat für diesen Zweck eine Funktion mitgeliefert: filesize(). Diese Funktion ermittelt die Dateigröße und gibt das Ergebnis in Bytes aus. Es empfiehlt sich also, bei größeren Dateien den ermitteltelten Wert entsprechend zu teilen, so dass KB oder MB entsteht. Dieses erreicht man durch Teilung durch ein Vielfaches von 1024.
Der Quellcode kann folgendermaßen aussehen:
<?php
//Grundfunktion
$size = filesize("dateiname.jpg");
//Als Variable
$datei= "dateiname.jpg";
$size = filesize($datei);
//Ausgabe in Bytes
echo "$size bytes";
//Ausgabe in KB
$size_in_kb = $size/1024;
echo "$size_in_kb KB";
//Ausgabe in MB
$size_in_mb = $size/1024/1024;
echo "$size_in_mb MB";
?>
Allerdings kann man auch die ganze Funktion kürzer schreiben und alles in einem Schritt rechnen. Selbst ein Runden auf eine bestimmte Anzahl von Nachkommastellen ist oft sehr hilfreich:
<?
//Ausgabe in MB, 2 Nachkommastellen
$size = number_format(filesize($datei)/1024/1024, 2);
echo "$size MB";
?>
Kommentare
Kommentar hinterlassen
Weitere PHP-Skripte
Weitere Code-Schnipsel: Script-Ladezeit mit PHP anzeigen | PHP Monatskalender | HTML-Formular Input sperren | PHPInfo-Datei mit Kennwortschutz | Datum und Timestamp in PHP | MySQL-Datum mit PHP konvertieren | Formulare mit PHP erzeugen | IP-Adresse anzeigen | Schleifen programmieren: FOR-Schleife | MySQL-Verbindung mit PHP | Einfache Datenbankabfrage | Syntax Highlight | Serverinformation und PHP-Version |
