abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 15:44 | IT novinky Ladislav Hagara | Komentářů: 0
    dnes 15:00 | IT novinky

    Server SiFive BigSky SF-2U870 2U je založený na jádře SiFive P870-D, zatím je naintegrovaných 32 jader 256 GB RAM 2 GHz, škálovat lze do 256 jader na čip. O něco podrobnější popis serveru v článku SiFive BigSky Ships the First RISC-V Server. Is the GPU Head Node the Prize? na futurumgroup.com. Asi ani tento čip nebude na úrovni nejlepších 64-bit ARMů a AMD Zenů, ale splňuje RVA23 specifikaci a je podporovaný Ubuntu 26.04 LTS a RHEL 10. V článku je

    … více »
    Pavel Píša | Komentářů: 0
    dnes 00:11 | IT novinky

    Na YouTube lze zhlédnout nový celovečerní dokumentární film The Story of VS Code | Official Documentary věnovaný Visual Studio Code.

    Ladislav Hagara | Komentářů: 11
    4.9. 23:49 | Zajímavý článek

    Farid Abdelnour se v příspěvku na blogu rozepsal o novinkám v nejnovější verzi 26.08.0 editoru videa Kdenlive (Wikipedie). Ke stažení také na Flathubu.

    Ladislav Hagara | Komentářů: 1
    4.9. 17:33 | Zajímavý článek

    Bylo vydáno nové číslo hackerského magazínu tmp.0ut: Volume 5.

    Ladislav Hagara | Komentářů: 0
    4.9. 01:44 | Nová verze

    Byla vydána nová stabilní verze 8.2 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 152. Přehled novinek i s náhledy v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    3.9. 23:11 | Nová verze

    Byla vydána nová stabilní verze 4.0 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). S rozhraním přepsaným do Qt. Přehled novinek také na YouTube. Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 1
    3.9. 16:55 | IT novinky

    NVIDIA kupuje Hugging Face za 12,93 miliardy dolarů.

    Ladislav Hagara | Komentářů: 3
    3.9. 15:44 | IT novinky

    Předobjednat si lze nový jednodeskový počítač Arduino VENTUNO Q s předinstalovaným Ubuntu. S 16 GB LPDDR5 a 64 GB eMMC. Pro lokální LLM, agentní AI, počítačové vidění, robotiku…

    Ladislav Hagara | Komentářů: 0
    3.9. 13:00 | Zajímavý software

    Hexpair není nejlepší HEX editor na světě a ani se o to nesnaží. Zato je k dispozici kdykoliv a kdekoliv – všude tam, kde máte svůj Vim. Vznikl jako hobby projekt před pár měsíci a dospěl do stavu, kdy by mohl být užitečný širší komunitě. Přepnout do HEX režimu se dá i uprostřed rozdělané práce: Soubor, který už máte otevřený běžným vim file.md, jedním příkazem přepnete do HEX editoru a dalším příkazem ho můžete vrátit zpět do textu. Kurzor přitom

    … více »
    Cohen | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (4%)
     (20%)
     (29%)
     (7%)
     (5%)
     (2%)
     (14%)
     (21%)
    Celkem 2589 hlasů
     Komentářů: 31, poslední 13.8. 00:27
    Rozcestník

    Dotaz: php prevod cisel

    petka avatar 6.5.2010 14:40 petka | skóre: 25 | blog: heydax | Klasterec N/O
    php prevod cisel
    Přečteno: 1526×
    Mam tabulku , kterou taham z mysql a ve sloupic data_in a data_out jsou ulozena cisla v bytech a potreboval bych to doplnit o funkci prevodu cisla na B , kB , MB , GB . priklad 122.22 MB data jsou ulozena v bytech .
    Ubuntu server - Asus E35M1​-M ​- AMD Hudson M1 , 2x Technisat Skystar2 , 2x 1GB Lan , WiFi mod AP ,vdr,mysql,apache2...

    Řešení dotazu:


    Odpovědi

    poky74 avatar 6.5.2010 15:15 poky74 | skóre: 36 | blog: Zápisník | Vrchlabí
    Rozbalit Rozbalit vše Re: php prevod cisel

    Podmínkou zjistit jestli je číslo (počet bytů) větší než počet bytů o jeden řád větší, potom dosaď jednotky.

    Chcete Linuxové samolepky nebo Tuxe na klíče? ->
    petka avatar 6.5.2010 16:22 petka | skóre: 25 | blog: heydax | Klasterec N/O
    Rozbalit Rozbalit vše Re: php prevod cisel
    a muzu poprosit o pribliznou syntaxi
    Ubuntu server - Asus E35M1​-M ​- AMD Hudson M1 , 2x Technisat Skystar2 , 2x 1GB Lan , WiFi mod AP ,vdr,mysql,apache2...
    Řešení 1× (petka (tazatel))
    poky74 avatar 6.5.2010 16:52 poky74 | skóre: 36 | blog: Zápisník | Vrchlabí
    Rozbalit Rozbalit vše Re: php prevod cisel

    function hatatitla($byte){

    if($byte<1000){$kolik=$byte;$jednotka="B";}

    elseif($byte>=1000){$kolik=$byte/1000;$jednotka="kB";}

    elseif($byte>=1000000){$kolik=$byte/1000000;$jednotka="MB";}

    //atd atd

    return "".$kolik." ".$jednotka.""; }

    echo hatatitla(1000); //vrati 1kB

    Chcete Linuxové samolepky nebo Tuxe na klíče? ->
    Řešení 1× (petka (tazatel))
    6.5.2010 16:56 Vaclav Bohac | skóre: 3 | Kopřivnice, Vlčovice
    Rozbalit Rozbalit vše Re: php prevod cisel
    Tohle mi přišlo jako docela pěkné řešení:
    
    function fsize_unit_convert($bytes)
    {
        $units = array('b', 'kb', 'mb', 'gb');
        $converted = $bytes . ' ' . $units[0];
        for ($i = 0; $i < count($units); $i++) {
             if (($bytes/pow(1024, $i)) >= 1) {
                  $converted = round($bytes/pow(1024, $i), 2) . ' ' . $units[$i];}
             }
             return $converted;
        }
    }
    
    "A computer is like air conditioning: it becomes useless when you open windows." - Linus Torvalds
    petka avatar 6.5.2010 17:22 petka | skóre: 25 | blog: heydax | Klasterec N/O
    Rozbalit Rozbalit vše Re: php prevod cisel
    Dekuji moc vsem .
    Ubuntu server - Asus E35M1​-M ​- AMD Hudson M1 , 2x Technisat Skystar2 , 2x 1GB Lan , WiFi mod AP ,vdr,mysql,apache2...
    7.5.2010 10:12 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: php prevod cisel
    Jen připomínka je tam 1024 a jednotky kb, mb, gb, a to jsou dvě nesrovnalosti v jednom
    • Mělo by tam být 1000 nebo „binary“ jednotky KiB,MiB,GiB
    • Zapisujeme kB, MB, GB a KiB, MiB, GiB, malé 'b' jsou spíše bity (i když jej zapisujeme spíše jako bit tedy bit kbit, Mbit, Gbit a v binary (1024) Kibit, Mibit Gibit) než bajty
    To, že je to ve starších věcech nedobře(dle dnešních pravidel), by nemělo vést k tomu, aby jsme to dále nedobře používali. :)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Josef Kufner avatar 9.5.2010 23:49 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: php prevod cisel
    Nebylo by lepší použít místo toho foru logaritmus?
    $i = (int) log($bytes, 2) / 10;
    Hello world ! Segmentation fault (core dumped)
    10.5.2010 13:13 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: php prevod cisel
    Příloha:
    Nedalo mi to, bo obecně nemám rád „matematická“ řešení, azkusil jsme si to.
    Odpověď zní: „výkonnostně určitě bylo“ – je to více než 3× rychlejší.
    Ale pokud se to zpracuje jinak, tak už »nebylo« :).
    Výsledek při stejném počtu cyklů:
    HMST:  5.052839040756 sec (HumanReadableSizeTest)
     HMS:  6.325034141540 sec (HumanReadableSize)
     FSC: 23.292122125626 sec (fsize_unit_convert)
    FSCL:  7.134121179580 sec (fsize_unit_convert_log)
    
    Zdrojový kód v příloze spuštěný z řádku php -f test.php. :)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    Josef Kufner avatar 10.5.2010 14:32 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Re: php prevod cisel
    To volání pow() není fér...
    function fsize_unit_convert_log_optimized($bytes)
    {
    	static $units = array(
    		array(  ' B', 1),
    		array(' KiB', 1024.),
    		array(' MiB', 1048576.),
    		array(' GiB', 1073741824.),
    		array(' TiB', 1099511627776.),
    	);
    	$u = & $units[(int) log($bytes, 2) / 10];
    	return round($bytes / $u[1], 2).$u[0];
    }
    
    Test finished
     HMST: 4.99683594704 sec (HumanReadableSizeTest)
      HMS: 5.82857894897 sec (HumanReadableSize)
      FSC: 21.1713778973 sec (fsize_unit_convert)
     FSCL: 6.77399015427 sec (fsize_unit_convert_log)
    FSCL2: 4.63680100441 sec (fsize_unit_convert_log_optimized)
    
    :-P
    Hello world ! Segmentation fault (core dumped)
    10.5.2010 15:52 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: php prevod cisel
    Sorry, nikdo neříkal, že ho mám dát pryč :) a lépe to podpořilo mé tvrzení :):):)
    Teď bych snad to mohl zmanipulovat jen tak, že bych vypustil Vaše „static“ abych to dorovnal :):):).
    PS: „Mezery“ jsem si všiml :)
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    6.5.2010 17:31 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: php prevod cisel
    Už jsem to napsal tak to pošlu :) - je to jen rozepsané a efektivnější než pow :).
    <?php
    
    $def_blockSize_1000 = Array(Array(1.0,'B'),
                                Array(1000.0,'kB'),
                                Array(1000000.0,'MB'),
                                Array(1000000000.0,'GB'),
                                Array(1000000000000.0,'TB'));
    $def_blockSize_1024 = Array(Array(1.0,'B'),
                                Array(1024.0,'KiB'),
                                Array(1024.0*1024.0,'MiB'),
                                Array(1024.0*1024.0*1024.0,'GiB'),
                                Array(1024.0*1024.0*1024.0*1024.0,'TiB'));
    
    function HumanReadableSize($value, $ain,$decimal=2,$dec_points='.',$thousands_sep='')
    { 
      if($value < 0)
        return "?";
      for($i = count($ain)-1;$i > 0;$i--)
      {
        if($value > $ain[$i][0])
          return number_format((float)$value / $ain[$i][0],$decimal,$dec_points,$thousands_sep) . $ain[$i][1];
      }
      return $value .  $ain[0][1];
    }
    
    echo "SI <br />\n";
    echo "900B = " . HumanReadableSize(900,$def_blockSize_1000) ." <br />\n";
    echo "1101B =" . HumanReadableSize(1101,$def_blockSize_1000) ." <br />\n";
    echo "1200123B = " . HumanReadableSize(1200123,$def_blockSize_1000) ." <br />\n";
    echo "1307895456B = " . HumanReadableSize(1307895456,$def_blockSize_1000) ." <br />\n";
    echo "1571597537412B ≈ " . HumanReadableSize(1571597537412,$def_blockSize_1000) ." <br />\n";
    echo "Binary <br />\n";
    echo "900B = " . HumanReadableSize(900,$def_blockSize_1024) ." <br />\n";
    echo "1101B = " . HumanReadableSize(1101,$def_blockSize_1024) ." <br />\n";
    echo "1200123B = " . HumanReadableSize(1200123,$def_blockSize_1024) ." <br />\n";
    echo "1307895456B = " . HumanReadableSize(1307895456,$def_blockSize_1024) ." <br />\n";
    echo "1571597537412B ≈ " . HumanReadableSize(1571597537412,$def_blockSize_1024) ." <br />\n";
    
    return;
    ?>
    
    PS: pokud pracujete s velkými čísly (v terách a v 64bit Integer-u) udělejte to už na straně SQL.
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.