Po vlastních microSD kartách nabízí nově Raspberry Pi také vlastní NVMe SSD disky. Samostatně i v sadách s M.2 HAT+.
Byla zveřejněna (𝕏) Zpráva o činnosti Digitální a informační agentury (DIA) za rok 2023 (pdf). Začíná slovy ředitele: "Vznik Digitální a informační agentury (DIA) je v posledních letech možná jedním z nejvýznamnějších kroků, který dodá potřebný impuls digitalizaci státní správy."
Vývojáři AlmaLinuxu představili AlmaLinux OS Kitten 10, tj. vývojovou verzi AlmaLinux OS 10 vycházejícího z CentOS Stream 10. Přehled novinek v poznámkách k vydání. Proč Kitten? Verze AlmaLinux OS jsou pojmenované podle kočkovitých šelem. Z kotěte vyroste další kočka.
Kryptografická knihovna OpenSSL byla vydána v nové verzi 3.4. Přehled změn na GitHubu.
Bylo objeveno nové největší prvočíslo. Jedná se o Mersennovo prvočíslo známé též jako M136279841. To znamená, že v binární formě je prvočíslo tvořeno 136 279 841 jedničkami. Objeveno bylo v rámci distribuovaného výpočetních projektu GIMPS (Great Internet Mersenne Prime Search). Zajímavostí je, že na rozdíl od předchozích takto objevených prvočísel nebylo objeveno pomocí CPU, ale na grafické kartě NVIDIA A100 s pomocí programu Gpuowl.
Protokol MQTT (Wikipedie) dnes slaví 25 let (Mastodon, 𝕏). První publikovaná specifikace je z 22. října 1999.
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.4. Přehled novinek na GitLabu. Z novinek lze zmínit podporu telefonu Google Pixel 7. Na stránkách Murena lze koupit Murena Pixel 7.
Připojte se ve středu 30. 10. 2024 od 10:00 do 12:00 na náš webinář "Řízení přístupu do PostgreSQL prostřednictvím externího autentizačního providera" (registrace zdarma) a naučte se, jak nastavit ověřování pomocí GSSAPI pro bezpečný přístup k databázím (Microsoft Active Directory nebo FreeIPA). Záznam předchozího webináře "Co je nového v PostgreSQL 17" můžete zhlédnout zde.
… více »Byla vydána nová verze 0.55 open source počítačové hry Unvanquished (Wikipedie), forku počítačové hry Tremulous. Instalovat ji lze také z Flathubu.
Dle plánu bylo dnes vydáno Factorio 2.0 a Factorio: Space Age, tj. aktualizace 2.0 počítačové hry Factorio (Wikipedie) oficiálně běžící také na Linuxu a velké vesmírní rozšíření Factorio: Space Age.
class Aaa { private $aaa; public function __construct() { $this->aaa = new Bbb(); } function __toString() { return $this->aaa; } }Třída Bbb
class Bbb { private $bbb; public function __construct() { $this->bbb = 'Výsledek'; } function __toString() { return $this->bbb; } }Vytvořím instanci třídy Aaa ale dostanu chybu!
echo new Aaa(); // Method Aaa::__toString() must return a string valueZjistil jsem, že když ve tříde Aaa opravím řádek
$this->aaa = new Bbb();za
$this->aaa .= new Bbb();tak to funguje. Proč tomu tak je však nedokážu nějak pochopit, vždyť nic nespojuji, tak proč tečka? Poradí někdo? Děkuji
__toString()
musi vracet string
.
Takze v tride Aaa
predelej metodu __toString()
takto:
function __toString() { return strval($this->aaa); }
=
a .=
? Prvni je prirazeni, druhy je zkraceny zapis concatenace stringu.
$this->aaa .= new Bbb();by se tedy dalo zapsat take takto:
$this->aaa = $this->aaa . new Bbb();No a pri concatenaci dochazi k prevodu na string, takze se na instanci
new Bbb()
zavola metoda __toString()
$this->aaa
nemas zadny vysledek, mas tam instanci tridy Bbb
. Metoda __toString()
se vola jen v pripade, ze je potreba z te instance udelat string
.
Musíš nějak vynutit konverzi na řetězec a pomocí .=
jsi provedl $this->aaa = $this->aaa . new Bbb();
.
Já mám otázku: »Co vás lidi, tedy fčul Tebe, prosím Tě vede k tomu to používat takto (používat __toString()
)?«
To se musí někde líhnout tyto nápady a musí to mít nějaký důvod :).
class Aaa { private $aaa; public function __construct() { $this->aaa = false; $this->aaa .= '<ul>'; $this->aaa .= '<li>aaa</li>'; $this->aaa .= '<li>bbb</li>'; $this->aaa .= '<li>ccc</li>'; $this->aaa .= '</ul>'; } }$aaa = new Aaa(); echo $aaa;
A k čemu je taková třída?
Dobře, bude to „výkonná“ třída:
<?php class Aaa { static public function getListStatic() { $o = '
class Aaa { private $o; public function __construct() { $this->o = '
$o = new Aaa(); echo $o; # Výsledek aaa bbb ccc
Tiskni Sdílej: