• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Filesize

Status
Für weitere Antworten geschlossen.

philipp

Neues Mitglied
PHP:
$filesize = filesize('mp_files/'.$ranhaenge['realname']);
if ($filesize > 999) {
 $filesize = bcdiv($filesize, '1024', 0).' KBytes';
 if ($filesize > 999) {
  $filesize = bcdiv($filesize, '1024', 1).' MBytes';
  if ($filesize > 999) {
   $filesize = bcdiv($filesize, '1024', 2).' GBytes';
  } 
 } 
} else {
 $filesize = $filesize.' Bytes';
}

bis KByte gehts noch, dann kommt 0.0 als ergebnis ^^

hat wer ne idee?
 
Werbung:
PHP:
<?php
$filesize = filesize('mp_files/'.$ranhaenge['realname']); 
$endung = array("Bytes","KiloBytes","MegaBytes","GigaBytes","TerraBytes");
$i = 0;
while($filesize > 1024)
{
  $filesize/=1024;
  $i++;
}
$filesize = round($filesize,2);
$filesize .= " ".$endung[$i];
echo $filesize;
?>
 
danke, kannst du vielleicht auch sagen, wieso es ned hingehauen hat bei mir ^^ steh voll auf der leitung :)
 
Werbung:
bcdiv gibt einen String zurück, mit dem du nicht weiter rechnen kannst.
Du müsstest also nach jedem bcdiv wieder ein settype($filesize,'float'); machen

Außerdem hängst du beim ersten schon ein KByte ran, und versuchst dann in der nächsten if-schleife zb. 1020KByte zu dividieren.

KByte/1024 = ?
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben