OCCT3D (Open CASCADE Technology) Open Source 8.0 bylo vydáno. OCCT3D (Wikipedie, GitHub) je objektově orientovaná knihovna pro 3D CAD, CAM nebo CAE. Používá se například v softwarech FreeCAD a KiCad.
Ve FreeBSD byla nalezena a již opravena 21letá zranitelnost CVE-2026-42511 v dhclient. Jedná se o vzdálené spuštění kódu (RCE). Útočník mající pod správou DHCP server může získat plnou kontrolu nad systémem FreeBSD pouze jeho připojením k místní síti.
Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.
UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-1.3. Současně oznámila, že nadcházející větší vydání 24.04-2.0 bude mít modernější webový prohlížeč.
Ploopy po DIY trackballech či sluchátkách představuje nový externí DIY trackpoint se čtyřmi tlačítky Bean. Obsahuje snímač Texas Instruments TMAG5273, spínače Omron D2LS-21 a řadič RP2040, používá firmware QMK. Schémata jsou na GitHubu; sadu lze předobjednat za 69 kanadských dolarů (bez dopravy a DPH).
Mozilla před dvěma týdny na svém blogu oznámila, že díky Claude Mythos Preview bylo ve Firefoxu nalezeno a opraveno 271 bezpečnostních chyb. Včera vyšel na Mozilla Hacks článek s podrobnějšími informacemi. Z 271 bezpečnostních chyb mělo 180 chyb vysokou závažnost, 80 chyb střední závažnost a 11 chyb nízkou závažnost. Celkově bylo v dubnu ve Firefoxu opraveno 423 bezpečnostních chyb. Čísla CVE nemusí být přiřazována jednotlivým chybám. CVE-2026-6784 například představuje 154 bezpečnostních chyb.
Před týdnem zranitelnost Copy Fail. Dnes zranitelnost Dirty Frag. Běžný uživatel může na Linuxu získat práva roota (lokální eskalaci práv). Na většině linuxových distribucí vydaných od roku 2017. Aktuálně bez oficiální záplaty a CVE čísla [oss-security mailing list].
Ačkoli je papež Lev XIV. hlavou katolické církve a stojí v čele více než miliardy věřících po celém světě, také on někdy řeší všední potíže. A kdo v životě neměl problémy se zákaznickou linkou? Krátce poté, co nastoupil do úřadu, musel papež se svou bankou řešit změnu údajů. Operátorka ale nechtěla uvěřit, s kým mluví, a Svatému otci zavěsila.
Incus, komunitní fork nástroje pro správu kontejnerů LXD, byl vydán ve verzi 7.0 LTS (YouTube). Stejně tak související LXC a LXCFS.
Google Chrome 148 byl prohlášen za stabilní. Nejnovější stabilní verze 148.0.7778.96 přináší řadu novinek z hlediska uživatelů i vývojářů. Vypíchnout lze Prompt API (demo) pro přímý přístup k AI v zařízení. Podrobný přehled v poznámkách k vydání. Opraveno bylo 127 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře.
Ř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: