Byla vydána (𝕏) nová verze 24.7 open source firewallové a routovací platformy OPNsense (Wikipedie). Jedná se o fork pfSense postavený na FreeBSD. Kódový název OPNsense 24.7 je Thriving Tiger. Přehled novinek v příspěvku na fóru.
Binarly REsearch upozorňuje na bezpečnostní problém PKFail (YouTube) v ekosystému UEFI. Stovky modelů zařízení používají pro Secure Boot testovací Platform Key vygenerovaný American Megatrends International (AMI) a jeho privátní část byla při úniku dat prozrazena. Do milionů zařízení (seznam v pdf) po celém světě tak útočníci mohou do Secure Bootu vložit podepsaný malware. Otestovat firmware si lze na stránce pk.fail. Ukázka PoC na Linuxu na Windows na YouTube.
Mobilní operační systém /e/OS (Wikipedie) založený na Androidu / LineageOS, ale bez aplikací a služeb od Googlu, byl vydán ve verzi 2.2 (Mastodon, 𝕏). Přehled novinek na GitLabu. Vypíchnuta je rodičovská kontrola.
Společnost OpenAI představila vyhledávač SearchGPT propojující OpenAI modely umělé inteligence a informace z webů v reálném čase. Zatím jako prototyp pro vybrané uživatele. Zapsat se lze do pořadníku čekatelů.
Distribuce Linux Mint 22 „Wilma“ byla vydána. Je založená na Ubuntu 24.04 LTS, ale s desktopovým prostředím Cinnamon (aktuálně verze 6.2), příp. MATE nebo Xfce, balíkem aplikací XApp, integrací balíčků Flatpak a dalšími změnami. Více v přehledu novinek a poznámkách k vydání.
Příspěvek na blogu Truffle Security: Kdokoli může přistupovat ke smazaným a privátním repozitářům na GitHubu.
Byla vydána nová verze 14 integrovaného vývojového prostředí (IDE) Qt Creator. Podrobný přehled novinek v cgitu. Vypíchnout lze podporu rozšíření v Lua.
Byla vydána verze 1.80.0 programovacího jazyka Rust (Wikipedie). Podrobnosti v poznámkách k vydání. Vyzkoušet Rust lze například na stránce Rust by Example.
Apple oznámil, že v beta verzi spustil své Apple Maps na webu. Podporován je také webový prohlížeč Chrome. Ne však na Linuxu.
Portál Stack Overflow po roce opět vyzpovídal své uživatele, jedná se především o vývojáře softwaru, a zveřejnil detailní výsledky průzkumu. Průzkumu se letos zúčastnilo více než 65 tisíc vývojářů. Z Česka jich bylo 710. Ze Slovenska 246.
class foo { function show{ $to = '<span>'.time().'</span>'; return $to; } }ale potřeboval bych to mít napsané nějak takto
class foo { function show{ <span><?php echo time(); ?></span> return ?????; } }Ale nevím jak to vrátit returnem nebo prostě jak to vrátit jinak. Poradí někdo? Děkuji
Řešení dotazu:
show()
delat? ma tisknout nebo neco vracet nebo co?
Ten kod v tom druhem bloku je nejaky blaznivy, napis to znovu a lepe..
class foo { function show{ <span><?php echo time(); ?></span> return ?????; } } $foo = new foo(); echo $foo->show();// vypsat to potrebuji až tady..
function show1(){ return '<span>'. time(). '</span>'; }OR //náročnějí
function show2(){ $pomstr = '<span>'. time(). '</span>'; return $pomstr; }OR //náročnějí
function show3(){ $pomstr = '<span>'; $pomstr .= time(); $pomstr .= '</span>'; return $pomstr; }PS: Nemyslím to zle (ba naopak), ale asi by to chtělo položit dotaz „jaká je nejlepší kniha o PHP a objektovém programování“.
<?php … ?>
). Předpokládám, že tam nemá být obyčejný <span>
, ale nějaký delší kód, kde mohou být uvozovky, apostrofy atd., a tazatel se chce vyhnout složitému uvozování a spojování.
Myslím, že PHP něco takového neumožňuje, a je to obecně problém jazyků, které míchají šablonu s programovým kódem. Podle mne by nejčistší řešení v případě, kdy chcete šablonu a kód míchat, bylo nevracet ten text jako výstup z metody, ale rovnou jej vypsat na výstup. Pak snad můžete použít konstrukci
<?php class foo { function show{ ?> <span><?php echo time(); ?></span> <?php return ?????; } } ?>Vracet ten text jako návratovou hodnotu funkce je divné, stejně to předpokládám budete chtít vypsat do výstupu. Ale jak už jsem psal, když máte jako základ špinavost typu míchání šablony a kódu, těžko pak hledat nějaké čisté řešení.
ob_xxxx
jsou standardní funkce běžně používané na zachycení výstupu.
$str = <<<MY_UNIQUE_DELIMITER <span> Dlouhy kod obsahující "'$ a další blbosti, ale samozřejmně znaky " do html takto jsou špatně, pokud tedy nejsou tam kde mají být. </span> MY_UNIQUE_DELIMITER;
$
musí být \$
;
show()
. Je to tak?
Pak bych to udelal takhle:
$myTime = time(); class foo { public function show($time) { return '<span>'.$time.'</span>'; } } $foo = new foo(); echo $foo->show($myTime);
class Foo { private $myTime; public function __construct() { $this->myTime=time(); } public function __toString($time) { return '<span>'.$this->myTime.'</span>'; } } $foo = new Foo(); echo $foo;
$myTime = time(); class Foo { private $myTime; public function __construct() { $this->myTime = time(); } public function __toString($time) { return '<span>'.$this->myTime.'</span>'; } } $foo = new Foo($myTime); echo $foo;
<?php function eval_code($s) { ob_start(); eval("?>" . $s . "<?php "); $t = ob_get_contents(); ob_end_clean(); return $t; } function show() { return eval_code("<span><?php echo time(); ?></span>"); } echo show();Je ale otázne, ako veľmi to je (ne)bezpečné a určite je rozumnejšie riešenie použiť nejaký šablónovací systém.
class foo {
function show() {
return "" . time() . "";
}
}
<?php class foo { function show{ ob_start(); ?> <span><?php echo time(); ?></span> <?php $ret = ob_get_contents(); ob_end_clean(); return $ret; } } ?>
Tiskni
Sdílej: