IT - Information Technology
Komputery, internet, nowe technologie, oprogramowanie komputeroweArtykuły z dziedziny
Wyjaśnienie pojęć, charakterystyka sprzętu oraz nowości rynkowe.
IT
(Technologia Informacyjna)Wyjaśnienie pojęć, charakterystyka sprzętu oraz nowości rynkowe.
PHP
PHP - SKRYPTOWY JĘZYK PROGRAMOWANIA

HP (skrót to angielski akronim rekurencyjny: PHP: Hypertext Preprocessor) - skryptowy język programowania głównie wykonywany po stronie serwera, służący przede wszystkim do tworzenia dynamicznych stron WWW, z możliwością zagnieżdżania w HTML-u (bądź XHTML-u). Udostępniany na zasadach licencji open-source. Jego składnia bazuje na językach C, Java i Perl.
PHP może być używane nie tylko do tworzenia stron WWW. Jego modułowa budowa pozwala także na programowanie aplikacji z interfejsem graficznym (rozszerzenie PHP-GTK), a także na wykonywanie z linii poleceń (podobnie jak Perl i Python). PHP pozwala także na interakcję z wieloma systemami relacyjnych baz danych (np. MySQL, Oracle, PostgreSQL) oraz na korzystanie z alternatywnych sposobów przechowywania danych - plików tekstowych i XML-a. Może być uruchamiane na większości systemów operacyjnych (uwzględniając najpopularniejsze) oraz serwerów sieciowych. Implementacja PHP w środowisku Linux wraz z serwerem Apache i silnikiem baz danych MySQL stanowi popularną platformę serwerową, tzw. LAMP.
Historia PHP
Pierwsza wersja PHP, rozpowszechniana pod nazwą PHP/FI (Personal Home Page/Forms Interpreter), została stworzona przez Rasmusa Lerdorfa w roku 1994 jako "nakładka" na Perla, mająca uprościć jego używanie. Gdy autor udostępnił kod użytkownikom, dwóch izraelskich programistów - Zeev Suraski oraz Andi Gutmans - rozbudowało pierwotną wersję projektu i udostępniło w roku 1997 wersję drugą PHP/FI. Rozbudowa, a właściwie przebudowa jądra parsera trwała dalej - jego oficjalna, trzecia wersja, przemianowana z PHP/FI na PHP ukazała się w lipcu 1998 roku. PHP 3.0 przyniosło wielkie zmiany, z których najważniejszą było wprowadzenie modułowości - użytkownicy mogli rozbudowywać funkcjonalność języka poprzez dodawanie zewnętrznych bibliotek. Kolejna wersja PHP (czwarta) pojawiła się zimą 1998 roku - rozbudowano i poprawiono w niej obsługę modułów oraz zmieniono silnik parsera. Nazwano go Zend Engine (od imion twórców - Zeev and Andi). Pojawiło się także wiele mniejszych zmian - poprawiono współpracę z serwerami sieciowymi, obsługę sesji HTTP, buforowanie wyjścia, dodano kilka konstrukcji językowych. W tej chwili aktualną wersją PHP jest 5.0.3, która ukazała się 15 grudnia 2004. PHP 5 opiera się na nowym Zend Engine w wersji 2.0. W stosunku do PHP 4, w sposób widoczny rozszerzono możliwości programowania obiektowego (podobnego do programowania obiektowego w języku Java lub C++), do tej pory zaniedbanego w PHP, od nowa napisano wsparcie dla XML, dodano SQLite, jednak nie dołączono bibliotek klienckich dla bazy danych MySQL. Zgodnie z wyjaśnieniami w FAQ, podczas kompilacji należy wykorzystać blibliotekę libmysqlclient zainstalowaną już w systemie.
Wstęp do PHP
W światku dostawców internetowych oraz twórców serwisów wyraźnie daje się zauważyć rosnąca popularność technologii PHP. Nie próbując analizować przyczyn tego zjawiska, warto zauważyć, że wspomniani dostawcy chętniej oferują dostęp do PHP, niż do CGI. Usługa ta pojawiła się także w ofercie dostawcy bezpłatnych miejsc na strony internetowe (http://www.phg.pl/). Być może właśnie dlatego, po tę technologię sięgają nie tylko zaawansowani twórcy stron WWW, ale także początkujący webmasterzy. Warto więc spojrzeć na PHP inaczej niż przez pryzmat specyfikacji, koncentrującej się na składni języka - warto spojrzeć z punktu widzenia korzyści, zasadności i wygody jej zastosowania.
Po co, na co i dlaczego?
W prasie, w serwisach i grupach dyskusyjnych, obok pojęcia PHP, często pojawia się pojęcie baza danych. Może to sprawiać wrażenie, że jedno bez drugiego nie może funkcjonować, a przecież nie jest to prawda. Przyznając, że PHP z bazami danych tworzą udaną parę, muszę jasno i dobitnie powiedzieć - PHP może oddać nieocenione usługi w różnych konstrukcjach - nie tylko w konstrukcjach opartych na bazach danych. Jeżeli jednak baza danych miałaby okazać się przydatna, niekoniecznie musi to być relacyjna baza danych typu MySQL, czy PostgreSQL, za korzystanie z której najczęściej trzeba dodatkowo zapłacić. Czasami w zupełności wystarczy plik o płaskiej strukturze, czyli zwykły plik tekstowy, którego poszczególne pola oddzielone są przecinkami, a każdy wiersz to oddzielny rekord. Jakie korzyści może odnieść twórca nieskomplikowanej witryny, stosując technologię PHP? Spróbujmy wypunktować możliwości, z których być może, każdy rozpoczynający swoją przygodę z PHP na początku skorzysta:
Modularyzacja witryny - to cecha charakterystyczna dla SSI (Server Side Includes), pozwalająca na włączenie do wielu stron serwisu, stałego fragmentu witryny (modułu), zapisanego w pojedynczym pliku. Typowym przykładem zastosowania jest nagłówek strony, menu serwisu, czy też stopka autorska, które zazwyczaj są takie same na wszystkich stronach. Nie muszę raczej wyjaśniać, że w razie potrzeby modernizacji któregoś z tych elementów, poprawek dokonujemy tylko w jednym pliku, a zmiany są widoczne na wszystkich stronach.
Dynamiczne generowanie kodu - kolejna, w pewnym sensie trochę podobna do poprzedniej cecha, która pozwala generować dynamicznie fragmenty dokumentu (lub też całe dokumenty) i umieszczać je na więcej niż jednej stronie witryny. Typowymi przykładami mogą być Skrypty PHP generujące fragment o dzisiejszych imieninach, aktualnym dniu, licznik odwiedzin czy też wpisy księgi gości.
Obsługa formularzy - stotą tej właściwości jest fakt, że PHP pobierając pola formularza utworzonego w języku HTML, automatycznie przekształca je w zmienne. Tym samym uzyskujemy łatwy dostęp do wartości tych pól, o możliwościach modyfikacji ich wartości nie wspominając.
Funkcje formatujące - możliwe jest tworzenie i użycie funkcji formatujących wyświetlanie określonych fragmentów tekstu. Przykładem może być tytuł akapitu lub działu, którego treść przekazywana jest jako argument stworzonej funkcji, która zwraca ten sam, ale sformatowany już tekst.