Computer-Masters.de > Artikel > Programmieren > PHP > PHP: filesize() - Die Größe einer Datei bestimmmen

PHP: filesize() - Die Größe einer Datei bestimmmen

Bei Downloads wird oft neben dem Link die Größe angegeben, um den Nutzer auf die vorraussichtliche Downloadzeit einzustellen.

Die Größe einer Datei lässt sich mit PHP ganz einfach ermitteln und ausgeben:


PHP-Script
<?php

echo filesize("tl_files/cmde/downloads/beta/kou/Knight_of_Underworld_Beta4_setup.exe");
?>
1

Der Code führt zu dieser Ausgabe:

Hinweis: Der Pfad funktioniert so natürlich nur in der Verzeichnisstruktur auf Computer-Masters.de 

In den Anführungszeichen einfach den (relativen) Pfad der Datei eintragen.
Die Ausgabe erfolgt in Byte.
Das ist oft unpraktisch, da Nutzer Angaben in Megabyte gewohnt sind.
filesize() gibt aber eine Zahl zurück mit der sich auch rechnen lässt.
Ein Megabyte sind bekanntlich eine Million Bytes. Um die Angaben umzurechnen muss man also nur durch 1000000 teilen und die Einheit ergäzen:


PHP-Script

<?php
$size 
filesize("tl_files/cmde/downloads/beta/kou/Knight_of_Underworld_Beta4_setup.exe")/1000000;
echo 
"Die Datei ist $size MB gro&szlig;!";
?>
1

Der Code führt zu dieser Ausgabe:

 

Wie Sie die Ausgabe, die noch etwas lang und unübersichtlich zu lesen ist, runden können, erfahren Sie hier: PHP: round() - Zahlen runden

Hinweis: Bei Dateien >2GB gibt es aufgrund der Verwendung von Integern oft Probleme und filesize() ist hierfür nicht geeignet.

Gerundetete filesize ausgeben

Um die gerundetete Filesize auszugeben, muss man PHP round() die Filesize als Parameter übergeben und die gewünschte Anzahl der  Nachkommastellen mit angeben.

Eine mögliche Umsetzung sieht so aus:


PHP-Script

<?php
$size 
round(filesize("BeispielDatei.exe")/10000002);
echo 
"Die Datei ist $size MB gro&szlig;!"
?>
1

Da durch 1000000 geteilt wird, ist die Angabe als Megabyte aufzufassen.

Computer-Masters.de > Artikel > Programmieren > PHP > PHP: filesize() - Die Größe einer Datei bestimmmen

Anzeige: