Wzrost zapotrzebowania na strony internetowe sprawia, że podczas ich tworzenia liczy się czas. Dlatego programiści poszukują narzędzi, które pozwolą im na stworzenie kolejnej witryny w znacznie krótszym czasie. Niezbędne są frameworki PHP – specjalne programy, które zawierają zbiór reguł stosowanych podczas tworzenia konkretnych elementów konstrukcyjnych strony.
Cechy frameworków
Zaletą frameworków jest przede wszystkim możliwość wstawienia całego zespołu kodów opisującego na przykład ustawienie kolumny na stronie bez konieczności żmudnego wpisywania każdego słowa i wszystkich niezbędnych znaczników. Frameworki przypominają nieco budowanie z klocków skomplikowanej konstrukcji, przy czym każdy kształt i kolor klocka odpowiada za konkretny efekt na stronie.
Wśród dostępnych na rynku programów funkcjonuje kilka bardziej popularnych, wśród których uplasowały się takie pozycje, jak Zend Framework, Cake PHP, Symfony, Prado czy CodeIgniter. Każdy z tych z nich posiada nieco inne cechy decydujące o przydatności dla konkretnego webmastera, który albo preferuje podczas tworzenia stron określone rozwiązania, albo też konkretna wersja łatwiej jest przez niego przyswajana i akceptowana. Przy okazji warto wspomnieć, że frameworki nie są aplikacjami w pełnym tego słowa rozumieniu, ale jedynie zbiorami reguł, pewnych kodowych schematów, które bywają standardowo wykorzystywane w projektach stron.
Zend 2 Framework
Zend należy do najpopularniejszych i jednym z wyżej ocenianych frameworków PHP. Jego pierwsza wersja została zaprezentowana w 2005 roku i od tego czasu systematycznie zdobywa zwolenników. Obecnie można też korzystać z wprowadzanego na rynek drugiego wydania.
Zend 2 stanowi zbiór bibliotek przydatnych do tworzenia stron www. W stosunku do pierwszego funkcjonującego wydania jest to zupełnie inny program, wymagający poznawania go od początku, a przy okazji uniemożliwiający wyświetlanie stron stworzonych w pierwszej wersji Zend Framework. Zaletą nowej wersji jest podział na moduły, które są samoistne i bez problemu można je przesuwać pomiędzy aplikacjami. Można je też pakować do formatu phar. Moduły umożliwiają zbieranie tego, co webmaster chce zamieścić w jednej kategorii, dzięki czemu stanowią uporządkowany zbiór klocków do budowy strony. Zmieniono również obsługę requestu, która jest znacznie prostsza.
Zend2 jest frameworkiem zorientowanym obiektowo, zawiera około 50 modułów odpowiedzialnych m.in. za obsługę baz danych, wsparcie RAD czy Web services.
Do jego najważniejszych zalet można zaliczyć elastyczność i możliwość stałego rozwoju, a także bardzo dobrze przygotowaną dokumentację. Jest jednak dość trudny do opanowania i wymaga poświęcenia czasu na naukę obsługi.
Symfony
To bardzo rozbudowany zbiór reguł przeznaczonych do tworzenia stron biznesowych. O popularności decyduje zapewne szereg takich zalet, jak pluginy, cachowanie, automatyczne generowanie projektów dla testów czy system szablonów. Ważną cechą Symfony jest też fakt, że korzystanie nie tylko z własnych komponentów (np. Symfony Templating), ale również z innych projektów, np. Open Source. Dzięki temu poszerza to jego możliwości. Minusem może okazać się dość trudna konfiguracja, stosunkowo niska wydajność (choć w najnowszej wersji 2.0 została ona poprawiona). Jeżeli więc już ktoś decyduje się na ten framework, dobrze jest wybrać wersję Symfony 2.0. Postawiono w niej na wysokie standardy, modularność oraz szereg innowacji. Dzięki temu jest łatwiejszy w kwestiach konfiguracji, szybszy (zarówno pod kątem wydajności, jak i pod względem przyspieszenia aplikacji). Większe jest także jego bezpieczeństwo – za sprawą komponentu Security otrzymuje się narzędzie, które są niezbędne do zabezpieczenia aplikacji.
CakePHP
To specjalnie stworzona opcja do szybkiego programowania stron webowych. Do jego podstawowych zalet zalicza się między innymi: dużą pomoc w nauce obsługi dzięki zamieszczonym tutorialom i przykładom. CakePHP ma też wbudowane listy kontroli dostępu, kontrolę i walidację formularzy oraz zintegrowaną obsługę CRUD. Program cechuje się niestety małą wydajnością.
CodeIgniter
Choć funkcjonalny, nie cieszy się większą popularnością. Przez korzystających z niego programistów ceniony jest za doskonałą dokumentację, małą wagę i dużą wydajność. Umożliwia efektywne i sprawne zaimplementowanie aplikacji internetowych lub stron, których samodzielnie przygotowanie zajmuje wiele czasu. Do zalet zaliczyć można również przejrzystość i łatwość opanowania funkcji. Plusem są ponadto niewielkie wymagania pod względem serwera. Nie ma także potrzeby konfiguracji. Z uwagi na powyższe zalety, będzie idealnym rozwiązaniem dla początkujących programistów. Minusem jest natomiast brak wsparcia mapowania obiektowo-relacyjnego.
Prado
Charakteryzuje nietypowy dla PHP model programowania (co wielu programistów uznaje za wadę). Posiada wiele praktycznych funkcji, w tym opcję kreowania różnorodnych motywów dla konkretnej strony (pod względem arkuszy stylów oraz metod prezentowania treści). Atutem jest reużyteczność kodu (istnieje możliwość ponownego wykorzystania go), a także bardzo dobra implementacja zagadnień w zakresie bezpieczeństwa.