Převod bajtů na MB – PHP – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Převod bajtů na MB – PHP – Fórum – Programujte.comPřevod bajtů na MB – PHP – Fórum – Programujte.com

 

Nazghul-CZ0
Newbie
5. 1. 2008   #1
-
0
-

Jakou matematickou operací převedu bajty na megabajty? Mám uploader souborů, ale pomocí $soubor_size, vrátí mi to velikost v bajtech. Vím, že na přopočet nebude stačit vynásobit to milionem (či kolika), ale je to trochu složitější. Nemá někdo vzorec na výpočet? :)

Nahlásit jako SPAM
IP: 80.188.58.–
mylan40
Super člen
5. 1. 2008   #2
-
0
-

Je to nenormálne zložité :-D V prvom rade treba deliť, nie násobiť.
Teraz sú 2 skupiny ľudí:
1. tvrdí, že 1kB má 1024 (=2^10) B, takže ak patríš sem, vydeľ bajty číslom 1 048 576 (=2^20) a dostaneš MB
2. tvrdí, že 1kB má 1000 (=10^3) B, takže to vydelíš miliónom a dostaneš MB.
Príp. použiješ jednotku MiB (mebibajty), ktorú vytvorila 2. skupina a znova to vydelíš 1 048 576.

Nahlásit jako SPAM
IP: 85.248.56.–
Orcslayer0
Stálý člen
5. 1. 2008   #3
-
0
-

function convertBytes($bytes, $unit) {

/*
$bytes
count of bytes

$unit:
B, kB, MB -> returns integer // round count of specified units
ALL -> returns string
*/

$bytes = (int)$bytes;

$units = array("B", "kB", "MB");
$bytes_array = array();
$counter = 0;

while ($bytes >= 1)
{
$bytes_array[] = $bytes % 1024;
$bytes /= 1024;
if ($bytes_array[$counter]!=0)
{
$output = $bytes_array[$counter]."".$units[$counter]." ".$output;
}
$counter++;
}

switch ($unit)
{
case "ALL": return $output;
case "B": return $bytes_array[0] + $bytes_array[1] * 1024 + $bytes_array[1] * 1024 * 1024;
case "kB": return $bytes_array[1] + $bytes_array[2] * 1024;
case "MB": return $bytes_array[2];
default: return $output;
}
}

Nahlásit jako SPAM
IP: 85.70.82.–
mr.Crow
~ Anonymní uživatel
18 příspěvků
5. 1. 2008   #4
-
0
-

mylan4 napsal:
Je to nenormálne zložité :-D V prvom rade treba deliť, nie násobiť.



vždyť to může násobit. číslem 1/2^10 resp . 0,001 :-P

Nahlásit jako SPAM
IP: 213.211.34.–
Architekt0
Super člen
6. 1. 2008   #5
-
0
-
Nahlásit jako SPAM
IP: 213.192.22.–
Python + Django + PostgeSQL = spokojený vývojář :-)
Nazghul-CZ0
Newbie
6. 1. 2008   #6
-
0
-

Díky všem, už mi to funguje :)

Nahlásit jako SPAM
IP: 80.188.58.–
mylan40
Super člen
6. 1. 2008   #7
-
0
-

To mr.Crow : To je pravda, ale on napísal "vynásobit to milionem (či kolika)", takže ak narába s miliónmi, tak treba deliť. :-P

Nahlásit jako SPAM
IP: 85.248.56.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 64 hostů

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý