Mirin webspace

Nejbohatší život má ten, kdo žije s minimem nároků

19. 12. 2007 - Komentáře (0) Zend Framework PHP

Uchovávání a manipulace s URL

Pokud používáte Zend Framework MVC, tak pomocí routeru určujete, na jakou action metodu určitého controlleru se požadavek, který jde na dané URL přepojí. Ve výstupech (views) pak pravděpodobně získáváte URL nějakým způsobem zpět. Buď můžete URL psát natvrdo, nebo využít flexibilnější metodu a použít view helperu Zend_View_Helper_Url. Na něm mě ale vadí jednak určitá ukecanost použití - musíte mu nacpat dost velké asociativní pole jako parametr a navíc je to jen view helper, s obtížemi se používá v jinde než ve views.

Další věc, co mě chyběla, je jasná definice parametrů a vůbec tvarů URL. Částečně to jde řešit definicí routeru přes config, ale to mě příliš nevyhovuje, raději si router inicializuji v kódu v aplikační třídě. Napsal jsem si tedy vlastní řešení, které využívá XML soubor jako zdroj všech URL v aplikaci.

12. 12. 2007 - Komentáře (7) Zend Framework

MVC a hledání modelu v ZF

Původně jsem chtěl dnes napsat článek o řešení URL mapování, které používám, nicméně ještě to odložím (tím odložím i to zveřejnění zdrojových kódů blogu). Dnes bych se rád zmíníl o tom, jak správně uchopit Model View Controller (MVC) návrhový vzor a to jak obecně, tak z pohledu PHP a Zend Frameworku. Nebudu popisovat úplné základy a budu předpokládat, že čtenář už má s použitím MVC nějaké zkušenosti.

Další věc, kvůli které článek píšu je to, že jsem na základě uvedených úvah přepsal domain třídy (v MVC část model) a nedosáhl jsem úplně toho, co jsem od toho čekal.

5. 12. 2007 - Komentáře (8) Zend Framework

Zend_Application stále žije

Tento příspěvěk by se dal nazvat také "za bootstrap štíhlejší." Jde o to, že tak, jak je v současné době Zend_Framework navržen, je nutné v bootstrap souboru index.php provést spoustu činností. Bootstrap tak velmi bobtná a hlavně se v něm hromadí globální kód, což se mi jako příznivnici OOP a zapouzdření moc nelíbí. Proto jsem se nechal inspirovat přístupem, který byl v návrhu rozšíření Zend_Application a Zend_Application_Resource. Oba návrhy byly nakonec zamítnuty, na konci článku se pokusím najít důvody proč.

30. 11. 2007 - Komentáře (0) PHP

Co znamená mysqlnd

K novinkách v chystaném php 5.3 patří také mysqlnd. První věc, co člověka napadne, když uvidí ten název, že se jedná o nové rozšíření pro práci s mysql. Ale tak to není. Jedná se o náhradu libmysql, neboli toho, co stojí pod ext/mysql, ext/mysqli, ext/pdo_mysql. Jde tedy o úplně novou implementaci samotného mysql protokolu mezi klientem a serverem. Jaké výhody to bude mít oproti použití libmysql a proč se k tomu vývojáři uchýlili?

26. 11. 2007 - Komentáře (4) PHP

Late static bindings v PHP 5.3 - neužívat vnitřně

V dalším článku něco o late static bindings (LSB), věc, která by objektové programování v PHP měl a posunout opět o něco dál. V podstatě lze říci, že LSB je o statické dědičnosti, která v PHP nefungovala tak, jak by si člověk zvyklý z jiných jazyků představoval. Lecos vypadá v PHP 5.3 lépe, ale neradujme se předčasně.