Zend Framework 3 je složitý framework ve srovnání např. Symfony, Nette. Už jen ten dvouslovný název, něco najít přes Google nemožné. Navíc dokumentace na internetu mizerná, řešeních na fórech minimum. Programovat v Zendu je celkem opruz, ale pár věcí umí dobře a když se obětuje čas se ho naučit, tak se to dá celkem použít. Framework řeší věci jako dependency injection, routování, šablonovací systémy, MVC, ale spoustu věcí vůbec neřeší a musí se v něm vytvářet pomocí modulů, helperů, listenerů apod. Framework tvoří základ v podobě balíčku zend-stdlib a na něj se dají navazovat další balíčky podle potřeby. Vše se dá snadno spravovat pomocí composeru včetně samotného vytvoření projektu. Pro začátek je možné použít připravený skeleton, který obsahuje základní funkce frameworku a moduly s ukázkou použití.
Pro každý problém ZF3 nabízí více řešení a dokonce možnost vymyslet si vlastní, což mi přijde super, ale pak už to podle mě není framework, když si každý programátor může problém řešit po svém.
Konfigurace (zendframework/zend-config)
V balíčku zend-config je řešení pro konfiguraci vaší aplikace. Umožňuje spojovat konfigurační soubory nejrůznějších typů (php array, json, ini file) do jednoho pole, vytvoří kontejner, který lze použít v modulech metodou getConfig().
Routování url (zendframework/zend-router)
Jak řešit url v ZF3 ? V balíčku zend-router je vymyslené řešení, které umožňuje nadefinovat si v konfiguraci router. Pro každou stránku webu se nastaví tvar a parametry, router pak projede všechny routy podle LIFO a přiřadí nastavený kontroler a akci, který stránku bude vytvářet. Jednoduché, přehledné řešení. Lze použít regulární výrazy, segmenty apod.
MVC (zendframework/zend-mvc)
Model-View-Controller je architektura, která se hodí u větších projektů. Pokud se rozhodnete jí používat, tak už si asi nedokážete představit, že by jste web dělali jiným způsobem. Oddělení HTML šablon od logiky a datového modelu umožňuje snadný vývoj, testování a dobrou orientaci v kódu. Moderní IDE jako PHPStorm, NetBeans apod. s tím umí perfektně pracovat a doporučuju rozdělit zdrojový kód pro každou funkčnost webu do samostatného souboru, dá se pak snadno opravovat, nahrazovat, testovat, inovovat bez rizika rozbití jiných funkcí webu. Je třeba ale používat kvalitní IDE, které umí indexovat soubory a rychle vyhledat soubor obsahující hledaný kód, metodu, proměnnou. Pokud používáte jednodušší editor např. PSPad, tak doporučuju nejdříve přejít na PHPStorm a pak až začít používat MVC.
[ad#SKLIK CLANKY]