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.

 

Sie haben noch Fragen?

Nutzen Sie einfach die Kommentarfunktion, die Ihnen auch als unregistrierter Leser zur Verfügung steht!

Gerne wird Ihnen bei Fragen zum Artikel weiter geholfen! Wenn Sie vom Artikel abweichende Fragen haben, können Sie gerne das Forum verwenden!

 

Kommentare

Kommentar von Theo_85 | 2017-10-09

Hello,
why it doesnt work?
if(($_FILES['filesToUpload']['size'] / 1000000) < 8){

Kommentar von Anonym | 2012-03-06

danke sehr hilfreich!

funktionniert super.

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

Anzeige: