Moduły
Cała funkcjonalność PHP zawarta jest w czterech zbiorach modułów różniących się od siebie dostępnością dla programisty.
- Moduły jądra
- Część silnika PHP; zawsze aktywne.
- Moduły oficjalne
- Element każdej dystrybucji PHP; aktywowane ręcznie przez administratora serwera.
- Repozytorium PECL
- Darmowe moduły o otwartym źródle tworzone przez programistów z całego świata, przeznaczone do samodzielnej kompilacji.
Począwszy od wydania PHP 5 do PECL przeniesionych zostało wiele
wcześniejszych modułów oficjalnych, najczęściej tych niestabilnych lub
rzadko używanych.
- Repozytorium PEAR
- Zbiór realizujących typowe zadania klas o ujednoliconej budowie.
Zdecydowana większość modułów ma budowę proceduralną. Dopiero w PHP
5 rozpoczęto tworzenie w pełni obiektowych rozszerzeń oraz obiektowych
zamienników starych funkcji.
Klasy i obiekty
Elementy programowania obiektowego pojawiły się w PHP 3. PHP 4 udostępniono statyczne wywoływanie metod. W
PHP 5 możliwości zostały rozszerzone między innymi o statyczne zmienne
klasy, obsługę interfejsów, kontrolę dostępu, kontrolę typów czy klasy i metody abstrakcyjne. Model PHP wzoruje się na językach C++ i Java. Od wersji 5 PHP posiada mechanizmy refleksyjne,
które pozwalają na analizę klas, funkcji oraz rozszerzeń. Bez
zainstalowania odpowiedniego rozszerzenia nie umożliwiają one jednak
zmiany tych struktur w czasie wykonywania.
Funkcje i struktury kontrolne
PHP jest wyposażone w szeroki wachlarz domyślnych funkcji. Niekonsekwencja w ich nazewnictwie (np. naprzemienne stosowanie CamelCase i znaku podkreślenia) jest niekiedy przedmiotem krytyki PHP. Znaczna
część funkcji pochodzi jednak od ich odpowiedników w języku C i różnice
pomiędzy nazwami funkcji wywodzą się właśnie z różnic w nazewnictwie z
odpowiednich bibliotek C.
PHP obsługuje rekurencję do poziomu około stu zagłębień. Jeśli stos parsera zostanie przeciążony nadmierną ilością wywołań lub iteracji, wywołanie aplikacji zostanie przerwane.
Obsługa błędów
Wersja 5 wprowadziła mechanizm wyjątków.
Tylko część modułów powiadamia jednak użytkownika o wystąpieniu błędów
za ich pośrednictwem; większość umieszcza je na wyjściu programu w
miejscu ich wystąpienia.
Zastosowanie
Popularność
W roku 1997 język PHP/FI obsługiwało ok. 50 tysięcy domen internetowych. W 2004 roku udział języka PHP wynosił ok. 15 milionów domen. Rok później wzrost popularności uległ jednak zahamowaniu.
Aplikacje
W PHP powstała znaczna część obecnie istniejących aplikacji
sieciowych. Należą do nich systemy zarządzania treścią, systemy forów
dyskusyjnych, aplikacje pocztowe oraz klienty baz danych. |