Proč je operátor ?? holé neštěstí

Operátor ?? se rodil 12 let, aby dorazil přesně ve chvíli, kdy ho PHP přestalo potřebovat. Místo zjednodušení života dnes spolehlivě zatajuje překlepy a chyby. Byl bych radši, kdyby se na něj čekalo ještě déle.

Tabulátory místo mezer jako projev ohleduplnosti

Spor tabulátory vs. mezery obvykle řešíme jako věc vkusu. Jenže pro programátory na braillském displeji znamená každá mezera jednu promrhanou buňku. Tabulátory nejsou preference, jsou ohleduplnost k těm, kdo kód čtou jinak než my.

Přidejte si značku {texy} do Latte

Tři řádky kódu a vaše Latte šablony najednou rozumí syntaxi Texy. Statický obsah se přeloží už při kompilaci, dynamický za běhu. Přidejte si vlastní parametry, filtr pro proměnné a máte typograficky čistý web bez námahy.

Latte 3: největší skok v dějinách Nette

Kompletně přepsaný kompilátor, ze kterého nezůstal ani řádek. Pět let jsem se do toho bál pustit, protože to znamenalo v podstatě napsat vlastní PHP-Parser. Dnes má Latte AST strom, neprůstřelný sandbox a kompilátor, o jakém jsem roky snil.

Nejsi ve vleku cargo kultů?

Dvacet let jsem poctivě psal static u polí a ŘVAL KONSTANTAMI, protože „se to tak dělá“. Pak jsem změřil jedno a zamyslel se nad druhým. Oba důvody dávno zmizely. Čím větší blbost, tím tužší má kořínek.

Zapisovat nullable types s otazníkem nebo bez?

Roky jsem odmítal psát otazník u nullable typů, protože redundance mě fysicky bolí. Pak přišlo PHP 8.0 s promoted properties a konzistence mě donutila kapitulovat. Příběh o tom, jak vás vlastní principy doženou.

Který framework má nejlepší dokumentaci?

Změřil jsem poměr dokumentace ku kódu u sedmi PHP frameworků. Výsledek je překvapivě vyrovnaný, Nette je nad průměrem a jako jediný má kompletní český překlad. Primitivní metrika, ale leccos prozradí.

Jak probíhá shutdown v PHP a volání destruktorů?

Shutdown v PHP má svůj rituál a destruktory v něm hrají roli, kterou málokdo chápe správně. Globální objekty se bourají pozpátku chytrým algoritmem, ostatní dostanou jen zdvořilostní __destruct bez skutečného zrušení. A to nejlepší nakonec: volání destruktoru vůbec není garantované.

Jak napsat error handler v PHP?

Vlastní error handler v PHP vypadá triviálně, dokud nenaboříte půlku ekosystému. Stačí ignorovat pár pravidel o potlačených chybách a návratových hodnotách a máte v kódu zradu, kterou nikdo nečeká. Tady je návod, jak to udělat správně.

Objevena první zranitelnost v Nette, aktualizujte!

Po 13 letech dostal Nette svůj první CVE záznam, když taiwanský výzkumník objevil RCE zranitelnost. Opravil jsem ji napříč všemi verzemi, včetně těch dávno nepodporovaných, protože bezpečnost si nezaslouží technologický dluh. Aktualizujte, prosím.

To je vše. Další články se teprve rodí.

phpFashion © 2004, 2026 David Grudl | o blogu

Ukázky zdrojových kódů smíte používat s uvedením autora a URL tohoto webu bez dalších omezení.