Hra Mini Thief je na Steamu zdarma napořád, když aktivaci provedete do 24. ledna do 19.00 [ProtonDB].
Certifikační autorita Let's Encrypt oznámila, že bude volitelně nabízet krátkodobé certifikáty s šestidenní platností a navíc s možností vystavit je na IP adresu. Zvolit typ certifikátu bude možné v certifikačním profilu ACME.
Herní konzole Nintendo Switch 2 byla oficiálně potvrzena. Vyjde letos. Trailer na YouTube. Více ve středu 2. dubna na Nintendo Direct.
Byl vydán Linux Mint 22.1 s kódovým jménem Xia. Podrobnosti v přehledu novinek a poznámkách k vydání. Linux Mint 22.1 bude podporován do roku 2029.
Google Chrome 132 byl prohlášen za stabilní. Nejnovější stabilní verze 132.0.6834.83 přináší řadu novinek z hlediska uživatelů i vývojářů. Podrobný přehled v poznámkách k vydání. Opraveno bylo 16 bezpečnostních chyb. Vylepšeny byly také nástroje pro vývojáře (YouTube).
Byla vydána verze 11.0.0 knihovny libvirt (Wikipedie) zastřešující různé virtualizační technologie a vytvářející jednotné rozhraní pro správu virtuálních strojů. Současně byl ve verzi 11.0.0 vydán související modul pro Python libvirt-python. Přehled novinek v poznámkách k vydání.
Byla vydána nová verze 3.4.0 nástroje pro inkrementální kopírování souborů rsync (Wikipedie). Přehled oprav a vylepšení v souboru NEWS. Řešeno je 6 zranitelností.
V srpnu loňského roku byla vyhlášena RP2350 Hacking Challenge aneb oficiální výzva Raspberry Pi na prolomení bezpečnosti mikrokontroléru RP2350. Povedlo se. Včera byli představeni čtyři vítězové a jejich techniky.
Na čem aktuálně pracují vývojáři open source operačního systému Haiku (Wikipedie)? Byl publikován přehled vývoje za prosinec 2024. Vypíchnuto je začlenění webového prohlížeče Iceweasel, tj. alternativního sestavení Firefoxu.
Tetris a DOOM běžící v pdf. Proč a jak v příspěvku na blogu.
Řešení dotazu:
new \PDO(...);
use
.
### index.php ### define('PATH', dirname(dirname(__FILE__)).'/code'); function __autoload($class){ $files = PATH.'/'.strtr($class, '_\\', '//').'.php'; require_once(strtr($class, '_\\', '//').'.php'); }
new MySQL(); ### library/MySQL.php ### namespace library; class MySQL{ public function __construct($registry){ $registry->pdo = new /PDO(DB_TYPE.':host='.HOST.';dbname='.NAME.', USER, PASS); }
new \PDO
, nikoliv new /PDO
.$files
. Ta by navíc měla být jednotného čísla.$registry
bys měl dělat tam, kde voláš new
nebo případnou factory metodu. Takle zabíjíš výhody dependency injection. Tedy vytvoř kontejner, který dostane konfiguraci a podle ní vytvoří na požádání třídy. Je to celkem jednoduchá úloha na použití magické metody __get()
a veřejných vlastností objektu (Hint: V konstruktoru si ulož konfiguraci, __get($něco)
koukne do konfigurace, zavolá uvedenou factory metodu a nastaví $this->něco
).MySQL
musíš vytvářet se správným namespace. Tedy: new \library\MySQL()
, nebo přidat vhodný use
.PATH
použij vhodnější název, je trochu matoucí.Dobry den. A jak se v takovem pripade pouziva "use" pro "\" ?new \PDO(...);
use \vyhodi error. Dekuji
use \PDO;Používají se třídy, nikoliv namespace. PHP nemá mechanismus, jak vypsat všechny třídy v daném namespace, neboť jsou načítány až na požádání. Můžeš získat jen třídy už načtené.
Tiskni Sdílej: