PHP

Z Encyklopedia Zarządzania

PHP to skryptowy, interpretowany działający po stronie serwera język programowania, wspierający zorientowaną obiektowo technikę pisania programów, którego twórcą jest Rasmus Lerdorf. Został stworzony z myślą o łatwym tworzeniu dynamicznych stron internetowych o przejrzystym kodzie źródłowym wspartym z czasem o idee oprogramowania Open Source oraz licencję opartą o styl licencji BSD. Szeroka gama współpracy z różnymi rodzajami serwerów WWW oraz silników baz danych przyczyniła się do wielkiej popularności oraz wzrostu rozwoju tej technologi[1][2].

TL;DR

Artykuł opisuje język programowania PHP, jego historię, możliwości oraz cechy. Jest to skryptowy język działający po stronie serwera, który wspiera programowanie obiektowe. PHP ma szeroką gamę zastosowań i jest popularny dzięki łatwości nauki, przejrzystej składni oraz wsparciu społeczności. Artykuł przedstawia również przykłady prostych programów w PHP.

Rys historyczny

Pierwsze zarysy obecnej formy języka PHP kształtowały się w domowym zaciszu Rasmusa Lerdorfa, gdy na użytek własny napisał pierwszą część języka, interfejs Perl CGI pomagający śledzić odwiedziny witryny WWW - był to rok 1994. Duże zainteresowanie użytkowników jakie wzbudził projekt Rasmusa oraz chęć wspólnej pracy nad rozwijaniem projektu powołała do życia pierwsza wersja sygnowana mianem Personal Home Page Tools lub też znana pod inną nazwą PHP Construction Kit. W niedługim czasie od publikacji pierwszego pakietu ukazała się wersja 2, zawierająca Form Interpreter (PHP/FI) - narzędzie służące przetwarzaniu zapytań SQL.

Kolejne lata rozwoju języka przynosiły ze sobą kolejnych użytkowników tej technologii, a w roku 1997 było ich już około 50 tys. na całym świecie. Tak dynamiczny jak na w ówczesne czasy rozwój technologiczny przekroczył możliwości jednej osoby i zmusił do zawiązania niewielkiej grupy programistów wspólnie pracujących nad projektem dalszego rozwoju PHP opartym o zasady oprogramowania Open Source.

Zeev Suraski oraz Andi Gutmans to dwa nazwiska izraelskich programistów, ważne w historii języka PHP ze względu na implementację analizatora składni dla PHP w wersji 3 i 4, a także obecnie rozwijanie przez nich całego projekt pod uogólnioną nazwą Zend, zend.com (zaczerpniętą z kolażu literowego ich imion, Zeev i Andi). Kolejne lata przynoszą coraz większe zainteresowanie PHP czego skutkiem w trzecim kwartale roku 1998 liczba użytkowników wzrosła z 50 tys. do około 100 tys., natomiast w rok później liczba ta sięgnęła zawrotnej liczby już 2 mln - to były czasy ogromnego wzrostu popularności internetu.

W chwili obecnej wiodącą, stabilną wersją języka PHP jest wersja 5 (z późniejszymi poprawkami), lecz mimo ciągłych poprawek bieżącej wersji trwają prace nad kolejną, prawdopodobnie sygnowaną numerem 6[3].

Interakcja serwera WWW i przeglądarki - PHP

  1. Przeglądarka wysyła do serwera żądanie pobrania strony o danym adresie
  2. Serwer pobiera stronę z dysku. Serwer wysyła do modułu PHP żądanie przetworzenia danych znajdujących się w pliku
  3. Moduł PHP przetwarza dane - wykonuje skrypt i wysyła go z powrotem do serwera
  4. Serwer wysyła przetworzone dane do przeglądarki

Moduł PHP przetwarza tylko te fragmenty pliku, które posiadają kod PHP. Pozostała część zostaje niezmieniona[4]

Możliwości PHP 5

  • Poprawione mechanizmy programowania obiektowego - jawne konstruktory i dekonstruktory, mechanizmy klonowania obiektów, klasy abstrakcyjne, zakres zmiennych, interfejsy
  • Obsługa wyjątków przy użyciu wyjątków try/catch - możliwość standaryzacji logiki zgłaszania i obsługi błędów.
  • Usprawniona obsługa XML oraz usług sieciowych
  • Wbudowana obsługa SQLite - SQLite to wygodne rozwiązanie dla programistów poszukujących baz danych dużych serwerów bez konieczności ponoszenia kosztów związanych z administracją i utrzymaniem ich[5]

Ogólne cechy języka

  • Praktyczność

Język PHP to ikona praktyczności. Dla przykładu poniższy skrypt pozwala na wyświetlenie aktualnej daty, zapisanej w formacie September 11, 2016

<?php echo date ("F j, Y"); ?>

  • Możliwości

Język PHP oferuje dla programistów niemal 200 wbudowanych bibliotek, zawierających łącznie ponad tysiąc funkcji, nie wspominając o dodatkowych rozszerzeniach. Język ten pozwala na: tworzenie plików Adobe Flash i PDF oraz manipulowanie nimi, ocene haseł pod kątem możliwości ich złamania, analizę niezwykle złożonych łańcuchów znaków, uwierzytelnianie użytkowników na podstawie informacji o tożsamości zapisanych w plikach, ścisła integracja z wieloma mechanizmami przetwarzania kart kredytowych, komunikacja przy użyciu szerokiej gamy protokołów, takich jak LDAP, IMAP, POP3, NNTP, DNS.

Język PHP jest językiem, który pozwala bardzo szybko wykorzystać posiadane umiejętności i wiedzę.

Język PHP jest dostępny za darmo.

Typy danych

W języku PHP występuje osiem typów danych, które określają rodzaje danych, jakie mogą być przechowywane jako zmienne. Typy te można podzielić na trzy różne rodzaje:

  • typy skalarne
  • typy złożone
  • typy specjalne[6]

Nazwa

Historia samej zmiany pełnej nazwy języka jest w miarę prosta i spójna mimo sporego upływu lat, jak na technologie komputerowe. Początkowo nazwą nadaną przez autora była Personal Home Page Tools lub też PHP Construction Kit. W kolejnych wersjach oraz publikacjach na temat języka można spotkać się z sygnowaniem jako Hipertext Preprocesor, natomiast obecnie pełna nazwa języka brzmi PHP: Hipertext Preprocesor.

Zalety i wady

Wśród zalet PHP można wyróżnić kilkanaście z nich[7][8]:

  • Niski koszt implementacji środowiska,
  • Niezależność,
  • Stabilność,
  • Szybkość,
  • Wysokie wyniki podczas współpracy z różnymi typami dostępnych typów serwerów oraz różnymi silnikami bazodanowymi,
  • Technologia o otwartym dostępie do kodu źródłowego,
  • Wysoka popularność oraz szerokie wsparcie społeczności użytkowników PHP,
  • Wsparcie dla mechanizmów programowania zorientowanego obiektowo,
  • Łatwość nauki oraz przejrzystość kodu dzięki składni języka podobnej do składni języków takich jak C, C++.

Do wad języka PHP przypisać można:

  • Duża rotacja nazewnictwa metod wbudowanych na przestrzeni kolejnych wersji,
  • Duże zróżnicowanie w procesie wypuszczania nowych aktualizacji.

Przykłady prostych programów

Poniżej umieszczone są przykłady prostych programów wykorzystujących różne techniki programowania w języku PHP.

Przykład 1

Najprostsza forma programu realizująca wyświetlenie na ekranie napisu realizowana jest przez poniższy sposób.

<?php
 echo 'Witaj Świecie',
?>

Przykład 2

Bardzo prosty program realizujący utworzenie kilku różnego typu zmiennych oraz sposób pracy z nimi.

<html>

<head>
 <meta charset="UTF-8">
</head>

<body>
<?php

// Lina ta jest komentarzem dla jednej linii tekstu rozpoczynając od znaków //

/*
Line te rozpoczynając od znaków / * oraz kończąc * / są komentarzem wieloliniowym
*/

$imie = 'Maciej';
$nazwisko = 'Dobrodziej';
$wiek = 24;
$waga = 85.134;
$wzrost = 185;

function wylicz_bmi ($masa_w_kg, $wzrost_w_cm)
{
 return $masa_w_kg/(($wzrost_w_cm/100)^2);
}

echo 'Nazywasz się '.$imie.' '.$nazwisko.', a Twój [[wskaźnik]] BMI wynosi '.wylicz_bmi ($waga, $wzrost);
?>
</body>
</html>


PHPartykuły polecane
JavaJavaScriptVisual BasicKomunikator internetowyPrzeglądarka internetowaRubyPerl (język programowania)Licencja BSDTechnologia FLASH

Przypisy

  1. Na podstawie: Tim Converse, Joyce Park, PHP 4 Biblia, Helion, Gliwice, 2001, s. 29
  2. Na podstawie: Luke Welling, Laura Thomson, PHP i MySQL. Tworzenie stron WWW. Vademecum profesjonalisty, Wyd. III, Helion, Gliwice, 2005, s. 25, 26-28
  3. Na podstawie: Tim Converse, Joyce Park, PHP 4 Biblia, Helion, Gliwice, 2001, s. 30
  4. Na podstawie: W. Jason Gilmore, PHP i MySQL. Od podstaw. Wydanie IV, 2011
  5. Na podstawie: W. Jason Gilmore, PHP i MySQL. Od podstaw. Wydanie IV, 2011
  6. Na podstawie: M. Lis, PHP I MySQL. Dla Każdego. Wydanie II, 2012
  7. Na podstawie: Tim Converse, Joyce Park, PHP 4 Biblia, Helion, Gliwice, 2001, s. 21, 31-40
  8. Na podstawie: Luke Welling, Laura Thomson, PHP i MySQL. Tworzenie stron WWW. Vademecum profesjonalisty, Wyd. IV, Helion, Gliwice, 2009, s. 26-28

Bibliografia

  • Converse T., Park J. (2001), PHP 4 Biblia, Helion, Gliwice
  • Gerner J., Owens M. Linux, Apache, MySQL i PHP, Zaawansowane programowanie
  • Gilmore J. (2011), PHP i MySQL od podstaw, Helion, Gliwice
  • Lis M. (2017), PHP i MySQL. Dla każdego, Helion, Gliwice
  • Welling L., Thomson L. (2009), PHP i MySQL. Tworzenie stron WWW. Vademecum profesjonalisty, Helion, Gliwice
  • Williams H., Lane D. (2005), PHP i MySQL. Aplikacje bazodanowe, Helion, Gliwice


Autor: Maciej Sypień, Grzegorz Bandura

Funkcja