Balíček kmod s nástroji pro práci s linuxovými moduly byl vydán ve verzi 31. Nově umí modprobe zavést modul nacházející se v libovolném adresáři (# modprobe ./drivers/gpu/drm/i915/i915.ko).
Adventura Trüberbrook je na portále GOG.com zdarma, akce trvá do 2. října.
Sound Open Firmware, projekt Linux Foundation, open source audio DSP firmware a SDK, byl vydán ve verzi 2.7.0. Z novinek lze vypíchnout podporu platformy AMD Van Gogh.
Richard Stallman v den oslav 40. výročí GNU oznámil, že má rakovinu (YouTube).
DIY trackball Ploopy má novou variantu Adept, na rozdíl od předchozích používá 44mm kouli, má symetrický tvar a šest tlačítek, snímač zůstává PMW-3360, novinkou je použití Raspberry Pi Pico, na kterém běží firmware QMK s podporou grafické konfigurační aplikace VIA. Předobjednávky jsou otevřeny za ceny 80-105 CAD.
Probíhá Meta Connect 2023. Společnost Meta představuje své novinky v oblasti AI a virtuální, smíšené a rozšířené reality. Představeny byly nové chytré brýle Ray-Ban | Meta a headset Meta Quest 3.
Eben Upton oficiálně představil (YouTube) nové Raspberry Pi 5 (YouTube). Je více než 2x výkonnější než jeho předchůdce, model 4B.
Byl vydán (YouTube) Counter-Strike 2. Nativně také pro Linux. Jedná se o největší technologický skok v historii této populární herní série.
Richard Stallman vystoupí v Praze s přednáškou Free Software And Your Freedom. V sobotu 30. září ve 14:30 na Pedagogické fakultě UK a v neděli 1. října v 18:00 hodin v rámci konference Hackers Congress Paralelní Polis.
Byla vydána verze 6 s kódovým název Faye linuxové distribuce LMDE (Linux Mint Debian Edition). Podrobnosti v poznámkách k vydání. Linux Mint vychází z Ubuntu. LMDE je postaveno na Debianu.
Řešení dotazu:
Podmínkou zjistit jestli je číslo (počet bytů) větší než počet bytů o jeden řád větší, potom dosaď jednotky.
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
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; } }
$i = (int) log($bytes, 2) / 10;
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
. :)
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
<?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.
Tiskni
Sdílej: