Du må være registrert og logget inn for å kunne legge ut innlegg på freak.no
X
LOGG INN
... eller du kan registrere deg nå
Dette nettstedet er avhengig av annonseinntekter for å holde driften og videre utvikling igang. Vi liker ikke reklame heller, men alternativene er ikke mange. Vær snill å vurder å slå av annonseblokkering, eller å abonnere på en reklamefri utgave av nettstedet.
  4 875
Måken's Aspirant
Fleff's Avatar
Donor
Fort spørsmål

Har en php linje som er slik:
echo "Størrelse: " . ($_FILES["file"]["size"] /1024 ) . " kB<br />";

Som dere ser får jeg da størrelsen på filen oppgitt i kilobytes, men får så mange desimaler (9!)

Hvordan endrer jeg koden slik at jeg får kun 1 eller 2 desimaler?

Har lest litt på div sider, men forstår ikke php så godt enda Om noen fks hadde sagt til meg, bare legg til:

string number_format ( float $number [, int $decimals = 0 ] )

Så hadde jeg ikke visst hvor den skulle legges.
NOOOOOOOOOOOOOOOOOO-
robhol's Avatar
round(n, antall_desimaler);
Du kan bruke printf til dette. F.eks:

Kode

printf ("%.2f KB", $_FILES["file"]["size"] /1024); // Her er uendelig mange tegn foran desimal tegnet.
printf ("%10.2f KB", $_FILES["file"]["size"] /1024); // Her tillater den bare 10 tegn foran desimal tegnet.
Du kan også sette printf til å fylle ut tomme plasser med "0".

Kode

printf ("%.02f KB", $_FILES["file"]["size"] /1024); // Her fyller den ut "0"'er slik at du alltid har 2 desimal uansett.
printf ("%010.02f KB", $_FILES["file"]["size"] /1024); // Her fyller den ut slik at du alltid har 10 tegn foran desimal tegnet og 2 tegn bak. Er det 1KB så ser det slik ut: 0000000001.00 KB.
Lek litt med printf, mye du kan gjøre med den.
Sist endret av 0xFF; 3. juni 2011 kl. 13:50.

Kode

echo "Størrelse: ".round($_FILES["file"]["size"]/1024,1)." kB<br />"; // Viser i KB
echo "Størrelse: ".round($_FILES["file"]["size"]/(1024*1024),1)." MB<br />"; // Viser i MB
echo "Størrelse: ".round($_FILES["file"]["size"]/(1024*1024*1024),1)." GB<br />"; // Viser i GB
Resultatet vil være for eks 1,1 KB, for 1.13 eller 1.01 endrer du 1-tallet bak komma
Lite kontroversiell
ticks's Avatar
Du kan også bruke PHP-funksjonen number_format().

Kode

number_format(<nummer>,<antall desimaler>);
http://php.net/manual/en/function.number-format.php
Sist endret av ticks; 5. juni 2011 kl. 20:18.