Po 9 týdnech vývoje od vydání Linuxu 7.0 oznámil Linus Torvalds vydání Linuxu 7.1. Přehled novinek a vylepšení na LWN.net: první a druhá polovina začleňovacího okna a časem také na Linux Kernel Newbies.
Cheat Engine (Wikipedie) je s verzí 7.7 k dispozici už také pro Linux. Jedná se o proprietární skener/debugger paměti používaný především k cheatování v počítačových hrách.
Vláda USA nařídila společnosti Anthropic pozastavit přístup k modelům Fable 5 a Mythos 5 pro všechny cizince, včetně zaměstnanců Anthropicu.
Společnost Murena představila (YouTube) novou verzi 4.0 mobilního operačního systému /e/OS (Wikipedie) založeného na Androidu a LineageOS bez aplikací a služeb od Googlu.
V Arch User Repository (AUR) bylo kompromitováno přes 400 opomíjených balíčků (jejich seznam). Útočník do nich začlenil škodlivý npm balíček atomic-lockfile, který krade citlivá data uživatelů. Publikována byla předběžná analýza spouštěného malwaru deps.
Homebrew, správce balíčků nejen pro macOS, byl vydán ve verzi 6.0.0 (seznam změn). Hlavními novinkami jsou bezpečnostní mechanismus tap trust kvůli důvěryhodnosti závislostí, vylepšení sandboxingu na Linuxu, interní JSON API nebo zlepšení výkonu.
Byla nalezena a 9. června opravena kritická zranitelnost ve FreeBSD v Kernel TLS (KTLS). Pojmenována byla Bumsrakete (FreeBSD-SA-26:26.ktls, CVE-2026-45257). Lokální neprivilegovaný uživatel může přepisovat soubory, ke kterým má právo pouze pro čtení. Přepsáním setuid binárky a jejím spuštěním může získat roota. Na všech verzích od verze 13.0 vydané v dubnu 2021.
Vývojáři open source operačního systému ReactOS (Wikipedie), jehož cílem je kompletní binární kompatibilita s aplikacemi a ovladači pro Windows, se na síti 𝕏 pochlubili, že ReactOS zvládne počítačovou hru Half-Life.
Byla vydána nová verze 4.8 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Využíván je Free Pascal Compiler (FPC) 3.2.2.
Apple container dospěl do verze 1.0.0. Jedná se o open source nástroj pro spouštění linuxových kontejnerů na macOS postavený nad containerization. Napsaný je v programovacím jazyce Swift a optimalizovaný pro Apple silicon.
if(!in_array($a, $b){}
nebo bez negace
if(in_array($a, $b){}
zkoušel jsem to takto
if($mark.in_array($a, $b){}
kde jsem dle potřeby vložil do proměnné $mark !
$mark = '!';ale nefunguje mi to, neporadí někdo? Díky
Řešení dotazu:
if ($mark eq '!' && !in_array($a, $b) ||
$mark ne '!' && in_array($a, $b)
)
nebo:
if (eval($mark . 'in_array($a, $b)'))
Co to napsat stylem: mark = true/false, zadny vykricknik a potom if (mark xor in_array(...
Tyhle interpretované jazyky s relativně volnou syntaxí, to je mor…
// $mark = TRUE;
// $mark = FALSE;
// $mark = ($a > 5);
// $mark = !isset($_REQUEST['neg']);
// ...
if (in_array($a, $b) == $mark) {
...
}
P.S.: příště nezapomeňte napsat, o jaký jazyk se jedná, ne vždy je to tak snadné uhodnout.
if (eval($mark . 'in_array($a, $b)'))
ale nefunguje to :(
Parse error: syntax error, unexpected T_STRING
Nevíte co se mu nelíbí? Díky
// $expected - TRUE jako bez vykřičníku, FALSE jako vykřičník
// když není potřeba automatická typová konverze (implicitní přetypování),
// je lepší používat operátory === a !==
if(in_array($a, $b) === $expected)
{
...
}
kde $expected je buď TRUE (pokud nebyl vykřičník) nebo FALSE (pokud měl být vykřičník)
jinak konstrukce if() ocěkává typ boolean (explicitně je to TRUE nebo FALSE hodnota) a to ve všech jazycích, které mají tyb bool, boolean, doporučuju něco o boolean logice přečíst
Negace se udělá unárním operátorem !, to chápete, ale už nedošlo, že nějaký eval je zbytečný.
Eval opravdu ne
security, execution speed a já ještě nevím proč...
jinak doporučuju hodně číst o programování a možná i obecně o algoritmizaci
doporučení neuvádím, stačí Wikipedia nebo Google
'in_array(\$a, \$b)', nebo to udelat s tim $expected jak pise Sten.
The eval() language construct is very dangerous because it allows execution of arbitrary PHP code. Its use thus is discouraged. If you have carefully verified that there is no other option than to use this construct, pay special attention not to pass any user provided data into it without properly validating it beforehand.
#vyber jeden z nasledujicich radku
$expected = false; #s negaci
$expected = true; #bez negace
if (in_array($a, $b) == $expected) {
...
}
Mozna bys mohl uvest na zaklade ceho se rozhodujes jestli tam ten vykricnik byt mel nebo ne, nejaka data v $_POSTu? Pokud jo tak to muzes udelat i takhle:
if (in_array($a, $b) == intval($_POST['bez_negace'])) {
...
}
Tiskni
Sdílej: