Wprowadzenie do języka PHP
PHP jest interpretowanym językiem skryptowym zaprojektowanym do generowania dynamicznych stron internetowych i aplikacji webowych w czasie rzeczywistym
Oznacza to, że kod PHP wykonuje się po stronie serwera – w odróżnieniu od języków takich jak JavaScript działających po stronie przeglądarki (klienta). Skrypty PHP osadzane są najczęściej w kodzie HTML strony i są wykonywane na serwerze, który następnie wysyła wynik (np. wygenerowany HTML) do przeglądarki użytkownika. Dzięki temu PHP umożliwia tworzenie stron dynamicznych – zawartość strony może się zmieniać w zależności od danych wejściowych, czasu, bazy danych itp.
Krótka historia: PHP zostało stworzone w 1994 roku przez Rasmusa Lerdorfa początkowo jako prosty zbiór skryptów w języku Perl do śledzenia odwiedzin jego strony domowej
Początkowo język nazywał się PHP/FI (Personal Home Page/Form Interpreter) i służył prostym stronom domowym. W 1995 roku Lerdorf udostępnił kod źródłowy swojego narzędzia, a projekt zaczął się rozwijać. Z czasem dołączyli do niego inni programiści (m.in. Andi Gutmans i Zeev Suraski), którzy przepisali PHP na nowo, tworząc PHP 3 w 1998 roku. Kolejne wersje – PHP 4 (wydane w 2000 r.), PHP 5 (2004 r.), PHP 7 (2015 r. – numer 6 pominięto) – wprowadzały liczne usprawnienia i nowe możliwości. Obecnie rozwijana jest gałąź PHP 8 (wydana po raz pierwszy pod koniec 2020 r.), która zawiera dalsze usprawnienia języka i wydajności (m.in. kompilator JIT). Aktualna stabilna wersja PHP to 8.4 (stan na styczeń 2025)
Zastosowania PHP: Język PHP najczęściej wykorzystuje się do tworzenia skryptów po stronie serwera WWW – czyli logiki działającej na serwerze obsługującym strony internetowe
Za pomocą PHP można generować kod HTML, obsługiwać formularze od użytkownika, komunikować się z bazami danych, obsługiwać pliki na serwerze czy nawet wysyłać e-maile. PHP może też działać w trybie wiersza poleceń (CLI) do pisania skryptów automatyzujących zadania lub nawet tworzenia prostych aplikacji okienkowych (to rzadsze zastosowania). W praktyce jednak PHP jest fundamentem wielu popularnych systemów webowych. Na przykład WordPress, Drupal, Joomla – systemy zarządzania treścią (CMS) – są napisane w PHP. W PHP powstały także liczne frameworki webowe (np. Laravel, Symfony, CodeIgniter), które upraszczają tworzenie rozbudowanych aplikacji internetowych. Dzięki swojej wszechstronności i długoletniej obecności na rynku, PHP jest niezwykle popularny – szacuje się, że około 75% wszystkich stron internetowych korzysta z PHP po stronie serwera
Charakterystyka: PHP jest językiem skryptowym, co oznacza, że kod jest interpretowany w czasie działania (nie trzeba go kompilować przed uruchomieniem). Skrypty PHP wykonują się na serwerze, a rezultat (np. wygenerowany HTML) jest przesyłany do przeglądarki użytkownika. Aby osadzić kod PHP w dokumencie HTML, używamy specjalnych znaczników <?php ... ?>
. Wszystko, co znajduje się wewnątrz tych znaczników, jest interpretowane jako kod PHP. Język cechuje się dość prostą składnią przypominającą języki C/Java, co czyni go przystępnym dla początkujących. PHP jest także wieloplatformowy – działa na różnych systemach operacyjnych (Linux, Windows, macOS) i współpracuje z większością serwerów WWW. W kolejnych sekcjach przyjrzymy się, jak uruchomić kod PHP na własnym komputerze, jakich narzędzi używać do pisania kodu oraz poznamy podstawy składni języka.
Środowiska uruchomieniowe dla PHP
Aby uruchamiać skrypty PHP, potrzebujemy środowiska, które obsłuży kod po stronie serwera. Możemy wyróżnić kilka popularnych rozwiązań do uruchamiania PHP lokalnie (na własnym komputerze) lub na serwerze zdalnym:
- XAMPP: Jest to wieloplatformowy pakiet oprogramowania, który zawiera wszystko, co potrzebne do uruchomienia PHP lokalnie. W skład XAMPP wchodzi serwer WWW Apache, interpreter PHP oraz system baz danych MariaDB/MySQL, a także inne narzędzia (m.in. Perl). Nazwa XAMPP to akronim: X (dla dowolnego systemu operacyjnego), Apache, MariaDB (zamiennik MySQL), PHP, Perl. XAMPP jest łatwy w instalacji – po pobraniu i zainstalowaniu wystarczy uruchomić panel kontrolny, w którym możemy włączyć serwer Apache i bazę danych. Po uruchomieniu, nasze skrypty PHP umieszczone w specjalnym folderze (np.
htdocs
) będą dostępne pod adresemhttp://localhost/
. XAMPP działa na Windows, Linux i macOS, co czyni go uniwersalnym rozwiązaniem dla początkujących. - WAMP: To pakiet analogiczny do XAMPP, ale przeznaczony typowo dla systemu Windows (nazwa to skrót od Windows, Apache, MySQL, PHP). Popularnym wydaniem jest WampServer. Działa on podobnie – instalujemy program, który zawiera Apache, PHP i MySQL, po czym możemy uruchamiać lokalny serwer na
localhost
. WampServer dodaje ikonę w zasobniku systemowym Windows, przez którą zarządzamy serwerem (start/stop usług, wybór wersji PHP itp.). To rozwiązanie dobre dla użytkowników Windows, którzy chcą szybko zacząć pracę z PHP w środowisku lokalnym. - MAMP: Podobnie jak WAMP, ale dedykowany dla komputerów Mac (macOS) – stąd nazwa Mac, Apache, MySQL, PHP. MAMP instaluje lokalny serwer Apache z PHP i bazą danych na macOS. Istnieje też wersja MAMP dla Windows, ale ogólnie XAMPP lub WAMP są częściej wybierane na Windows, a MAMP na Mac. Zaletą MAMP (podobnie jak XAMPP) jest prostota – program zapewnia gotowe środowisko i graficzny panel do jego uruchamiania. Po instalacji skrypty PHP umieszczamy w wyznaczonym katalogu (np.
htdocs
lubMAMP/www
) i możemy je testować poprzezhttp://localhost/
. - LAMP: To termin określający manualne skonfigurowanie środowiska na systemie Linux: Linux, Apache, MySQL, PHP. W odróżnieniu od powyższych, LAMP nie jest pojedynczym pakietem do pobrania, lecz zestawem oprogramowania, które instalujemy (np. poprzez menedżer pakietów) na swojej maszynie z Linuxem. Dla osób używających Linuxa często jest to podstawowy wybór – instalują osobno Apache, PHP i MySQL (lub MariaDB). Dzięki dużej społeczności Linuxa dostępnych jest wiele poradników, jak szybko postawić własny serwer LAMP. Analogiczne nazwy to WAMP dla Windows, MAMP dla Mac – wszystkie one oznaczają ten sam zestaw narzędzi (system, Apache, MySQL, PHP) dostosowany do danego systemu operacyjnego
- Serwer Apache/Nginx z PHP (PHP jako moduł lub FPM): Niezależnie od gotowych pakietów, warto wiedzieć, że serwer PHP można uruchomić, integrując go z popularnymi serwerami WWW. Apache może obsługiwać PHP poprzez moduł mod_php lub poprzez uruchamianie zewnętrznego procesu PHP. Nginx (inny popularny serwer WWW) nie posiada modułu PHP, więc zazwyczaj używa się go w połączeniu z procesem PHP-FPM (FastCGI Process Manager). W praktyce dla początkujących szczegóły te nie są tak istotne – ważne, że instalując Apache i PHP razem (lub Nginx z PHP-FPM), możemy serwować dynamiczne strony PHP. Wielu dostawców hostingu korzysta właśnie z serwera Apache lub Nginx do obsługi stron PHP.
- Docker: Docker to platforma pozwalająca tworzyć kontenery z gotowym środowiskiem. Dla PHP istnieją oficjalne obrazy Dockera zawierające zainstalowany interpreter PHP (np. obrazy
php
z Docker Hub, które można uruchomić jednym poleceniem). Można też użyć gotowych kontenerów zawierających cały stos LAMP. Docker jest nieco bardziej zaawansowanym rozwiązaniem, ale staje się coraz popularniejszy wśród programistów, ponieważ pozwala łatwo odtworzyć to samo środowisko na różnych komputerach. Przykładowo, można uruchomić kontener z Apache + PHP, osobny kontener z bazą danych MySQL, i mieć działający lokalnie serwer bez instalowania tych komponentów bezpośrednio w systemie. - Hosting lokalny vs zdalny: Powyższe rozwiązania dotyczą głównie pracy na localhost (czyli własnym komputerze). To idealne podejście do nauki i tworzenia projektu w fazie deweloperskiej – mamy pełną kontrolę i nikt poza nami nie ma dostępu do serwera. Gdy jednak zechcemy udostępnić naszą aplikację szerszemu gronu, potrzebny będzie hosting zdalny. Większość komercyjnych hostingów (współdzielonych) obsługuje PHP domyślnie – wykupujemy usługę, wgrywamy pliki PHP na serwer (np. przez FTP) i strona działa. Istnieją też platformy typu VPS czy chmura (AWS, Azure, Google Cloud), gdzie samodzielnie konfigurujemy serwer z PHP wedle potrzeb. Dla początkujących najprostszym krokiem po lokalnych testach jest skorzystanie z niedrogiego hostingu współdzielonego z obsługą PHP lub platformy jak Heroku (która wspiera PHP) – dzięki temu nasz projekt stanie się dostępny w internecie.
Popularne IDE i edytory kodu do pracy z PHP
Pisanie kodu w dowolnym języku programowania staje się wygodniejsze, gdy korzystamy z odpowiednich narzędzi – edytorów i środowisk programistycznych. Oto kilka popularnych rozwiązań, które dobrze sprawdzają się przy nauce i pracy z PHP:
- Visual Studio Code (VS Code): Lekki, darmowy edytor kodu od Microsoft, dostępny na Windows, macOS i Linux. VS Code jest ceniony za przejrzysty interfejs i ogromną możliwość dostosowania poprzez wtyczki (extensions). Dla PHP dostępne są rozszerzenia dodające kolorowanie składni, automatyczne uzupełnianie kodu, wsparcie dla debugowania czy narzędzi takich jak PHP CS Fixer. VS Code jest dobrym wyborem dla początkujących, ponieważ jest prosty w obsłudze, a jednocześnie bardzo rozbudowany dzięki dodatkom. Można w nim równie wygodnie edytować kod HTML, CSS i JavaScript używany razem z PHP.
- PhpStorm: Rozbudowane IDE (Integrated Development Environment) komercyjne od firmy JetBrains, stworzone specjalnie do pracy z PHP. PhpStorm jest płatny (choć posiada wersję testową i zniżki edukacyjne), ale oferuje bardzo zaawansowane funkcje: inteligentne podpowiedzi kodu oparte o kontekst, refaktoryzację, wbudowany debuger Xdebug, integrację z systemami kontroli wersji (Git), narzędzia do pracy z bazami danych i frameworkami PHP. Jest to narzędzie profesjonalne, często używane przez doświadczonych programistów PHP. Jego zaletą jest głęboka integracja z ekosystemem PHP – np. od razu wspiera popularne frameworki (Laravel, Symfony) i narzędzia (Composer). Dla początkujących może być trochę przytłaczający, ale jeśli ktoś planuje poważniej zająć się PHP, warto go poznać.
- Sublime Text: Bardzo szybki i lekki edytor tekstu dla programistów. Sublime Text nie jest w pełni darmowy (oficjalnie jest to produkt płatny, ale dostępna wersja nieskończona trial bez ograniczeń poza przypomnieniem o licencji). Oferuje minimalizm interfejsu, świetną wydajność oraz możliwość instalacji pluginów. Dla PHP można zainstalować pakiety dodające podświetlanie składni, fragmenty kodu (snippety) czy integrację z narzędziami budującymi. Sublime nie jest tak funkcjonalny jak pełne IDE (brak wbudowanego debuggera czy głębokiej analizy kodu), ale wielu programistów lubi go za szybkość działania i prostotę. Dla początkującego może być wystarczający do małych projektów PHP, zwłaszcza gdy łączymy go z innymi narzędziami (np. do testowania w przeglądarce).
- NetBeans: Otwartoźródłowe IDE (dawniej rozwijane przez Sun/Oracle, obecnie przez społeczność Apache) obsługujące wiele języków, w tym PHP. NetBeans jest darmowy. Oferuje on typowe funkcje IDE: edycję z podpowiedziami, debugowanie, profilowanie, integrację z systemem kontroli wersji, a także obsługę projektów PHP (wraz z HTML, CSS, JavaScript). Choć NetBeans był bardziej popularny w poprzedniej dekadzie, nadal jest solidnym środowiskiem dla PHP, zwłaszcza jeśli ktoś szuka darmowego IDE z dużą liczbą funkcji. Jego interfejs bywa jednak trochę ociężały w porównaniu do VS Code czy PhpStorm.
Oprócz powyższych, warto wspomnieć, że praktycznie każdy edytor tekstu może posłużyć do napisania kodu PHP – nawet systemowy Notatnik w Windows. Jednak specjalistyczne edytory/IDE znacznie ułatwiają pracę dzięki wyróżnianiu składni, numeracji linii, automatycznym wcięciom, podpowiedziom funkcji itp. Dla początkujących rekomendowane jest wypróbowanie VS Code (ze względu na prostotę i możliwości) albo środowiska typu XAMPP z wbudowanym edytorem, jeśli taki oferuje. Ważne jest, by czuć się komfortowo z narzędziem – reszta to kwestia praktyki.
Omówienie podstaw składni PHP
Teraz, gdy wiemy już co nieco o PHP i mamy przygotowane środowisko oraz edytor, przejdźmy do podstaw składni języka. W tej sekcji omówimy kluczowe elementy PHP: zmienne, instrukcje warunkowe, pętle, funkcje oraz komentarze. Wszystkie przykłady kodu będą zawarte wewnątrz znaczników <?php ... ?>
, co oznacza, że powinny znaleźć się w pliku .php
lub w sekcji PHP w dokumencie HTML, aby można je było wykonać.
Zmienne w PHP
Zmienne to podstawowy sposób przechowywania danych w programie. W PHP każda zmienna rozpoczyna się od znaku $ (dolara), po którym następuje nazwa zmiennej. Nazwa zmiennej może składać się z liter, cyfr i znaku podkreślenia (nie może zaczynać się od cyfry). PHP jest językiem o dynamicznym typowaniu, co znaczy, że nie musimy deklarować typu zmiennej – typ (np. liczba, tekst) zostanie ustalony na podstawie przypisanej wartości. Przykłady użycia zmiennych:
<?php
$tekst = "Witaj, świecie!"; // zmienna typu tekstowego (string)
$liczba = 42; // zmienna typu liczbowego (integer)
$wartosc = 3.14; // zmienna typu zmiennoprzecinkowego (float)
$czyPrawda = true; // zmienna typu logicznego (boolean)
echo $tekst; // wypisze: Witaj, świecie!
echo $liczba; // wypisze: 42
?>
Powyżej utworzyliśmy kilka zmiennych: $tekst
, $liczba
, $wartosc
, $czyPrawda
. W komentarzach (po //
) opisaliśmy, jakiego typu dane one przechowują. W PHP do wyświetlania danych używamy funkcji echo (lub podobnej print) – w powyższym kodzie echo $tekst;
spowoduje wypisanie zawartości zmiennej $tekst
do outputu HTML. Zmienna $tekst
przechowuje ciąg znaków „Witaj, świecie!”, więc zostanie to wyświetlone. Zmienna $liczba
przechowuje liczbę 42. Możemy je wykorzystywać w obliczeniach lub łączyć z tekstem. Na przykład, jeśli chcemy połączyć (skonkatenować) ciąg tekstowy z liczbą, możemy to zrobić tak:
<?php
$imie = "Jan";
$wiek = 30;
echo "Imię: " . $imie . ", Wiek: " . $wiek; // konkatenacja za pomocą kropki
?>
W powyższym przykładzie tworzymy zmienne $imie
i $wiek
, a następnie za pomocą echo
wypisujemy zdanie, łącząc tekst i zmienne przy pomocy operatora .
(kropka oznacza łączenie stringów w PHP). Wynik to: Imię: Jan, Wiek: 30
. Widzimy więc, że zmienne pozwalają nam przechować wartości i potem łatwo je używać w różnych kontekstach.
Komentarze
Komentarze służą do tego, by umieszczać w kodzie objaśnienia, które nie będą wykonywane przez program. Są one ignorowane przez interpreter, ale czytelne dla programistów. W PHP komentarze można tworzyć na dwa sposoby (podobnie jak w C/C++ czy Java):
- Komentarz jednolinijkowy: zaczyna się od
//
(podwójny ukośnik) lub od#
. Obejmuje on tekst do końca danej linii. Przykład: phpKopiujEdytuj<?php $x = 10; // To jest komentarz jednolinijkowy wyjaśniający zmienną $x $y = 20; # Ten styl komentarza też jest poprawny w PHP ?>
Powyżej po deklaracji$x
umieściliśmy komentarz// To jest komentarz...
– wszystko od//
do końca linii jest ignorowane. Podobnie linia z$y
ma komentarz zaczynający się od#
. - Komentarz wielolinijkowy: obejmuje większy blok tekstu, zaczyna się od
/*
a kończy*/
. Wszystko pomiędzy tymi znakami będzie traktowane jako komentarz. Przykład: phpKopiujEdytuj<?php /* Poniżej zdefiniujemy trzy zmienne. Ten komentarz zajmuje kilka linii, więc używamy notacji ukośnik-gwiazka. */ $a = 1; $b = 2; $c = $a + $b; // wynik dodawania ?>
Taki komentarz jest przydatny, gdy chcemy opisać bardziej złożoną logikę lub tymczasowo wyłączyć kawałek kodu (np. przy debugowaniu).
Dobre praktyki programistyczne zachęcają do komentowania trudniejszych fragmentów kodu, aby inni (lub my sami w przyszłości) lepiej zrozumieli, co dana część programu robi. W krótkich, oczywistych fragmentach komentarze nie są konieczne. Ważne jest, aby komentarze nie kolidowały z kodem – tzn. pamiętamy o poprawnym otwarciu i zamknięciu /* */
, by nie „zakomentować” przez pomyłkę większej części kodu niż zamierzaliśmy.
Przykłady prostych programów w PHP
Czas zobaczyć w praktyce kilka bardzo prostych programów napisanych w PHP. Poniższe przykłady zademonstrują, jak wygląda kod PHP wykonujący typowe zadania: wypisanie tekstu, wykonanie obliczeń oraz przetwarzanie danych z formularza HTML. Każdy przykład zawiera kod oraz omówienie jego działania krok po kroku.
Przykład 1: „Hello, World!” – nasz pierwszy skrypt PHP
Tradycyjnym pierwszym programem w wielu językach jest wypisanie słynnego „Hello, World!”. Zróbmy to samo w PHP. Załóżmy, że mamy plik o nazwie hello.php
w naszym środowisku (np. w folderze htdocs
XAMPP-a). Wewnątrz tego pliku umieścimy:
<?php
echo "Hello, World!";
?>
To wszystko! Kod między <?php
a ?>
zostanie wykonany przez serwer PHP. Funkcja echo
wypisze podany tekst. Jeśli teraz uruchomimy ten skrypt na serwerze (np. w przeglądarce wpisując adres http://localhost/hello.php
), zobaczymy na stronie rezultat:
Hello, World!
Czyli nasz tekst został wysłany do przeglądarki. W praktyce możemy łączyć kod PHP z HTML. Gdybyśmy w pliku hello.php
napisali coś takiego:
<?php
echo "<h1>Hello, World!</h1>";
?>
to serwer wygeneruje HTML z nagłówkiem h1 i wyświetli duży napis „Hello, World!” na stronie. Możemy też mieszać PHP i HTML bezpośrednio. Na przykład:
<html>
<body>
<p>To jest stały tekst HTML.</p>
<?php echo "<p>A to tekst wygenerowany w PHP.</p>"; ?>
</body>
</html>
Powyższy fragment pokazuje, że między znacznikami HTML <p>...</p>
możemy wstawić sekcję PHP, która również wyprodukuje kawałek HTML. Po uruchomieniu takiej strony użytkownik nie widzi różnicy, który fragment był napisany statycznie, a który wygenerowany przez PHP – dla niego to po prostu jedna strona HTML.
Krok po kroku:
- Tworzymy plik
.php
(np.hello.php
). - Wpisujemy kod z
echo "Hello, World!";
wewnątrz znaczników PHP. - Umieszczamy plik na serwerze (lokalnym lub zdalnym).
- Otwieramy stronę w przeglądarce. Serwer interpretuje kod PHP i zwraca HTML z naszym tekstem.
- Widzimy rezultat na stronie.
Ten prosty przykład potwierdza, że środowisko jest poprawnie skonfigurowane i potrafi obsłużyć skrypt PHP.
Przykład 2: Prosta kalkulacja (dodawanie liczb)
W następnym przykładzie pokażemy prosty program dodający dwie liczby i wyświetlający wynik. Utwórzmy plik dodawanie.php
z następującą zawartością:
<?php
// Definicja dwóch zmiennych z liczbami
$a = 8;
$b = 5;
// Dodawanie dwóch liczb
$suma = $a + $b;
// Wyświetlenie wyniku
echo "Suma liczb $a i $b wynosi: $suma";
?>
Co tu się dzieje:
- Najpierw definiujemy zmienne
$a
i$b
, przypisując im wartości 8 i 5. - Następnie tworzymy zmienną
$suma
, w której zapisujemy wynik dodawania$a + $b
. W momencie wykonania tej linii interpreter pobierze bieżące wartości$a
(8) i$b
(5), doda je, otrzymując 13, i tę wartość przypisze do$suma
. - W końcu używamy
echo
, aby wyświetlić tekst. Zwróć uwagę, że użyliśmy tu możliwości wstawiania zmiennych do ciągu znaków ujętego w podwójne cudzysłowy – wpisaliśmy$a
i$b
w środku stringa, dzięki czemu PHP podstawi ich wartości. To wygodny sposób formatowania tekstu (nazywa się interpolacją zmiennych w łańcuchach). Można by to osiągnąć również przez konkatenację, np."Suma liczb ".$a." i ".$b." wynosi: ".$suma
, ale zapis z$a
bezpośrednio w stringu jest czytelniejszy.
Jeśli uruchomimy ten skrypt na serwerze, zobaczymy wynik:
Suma liczb 8 i 5 wynosi: 13
Możemy poeksperymentować, zmieniając wartości zmiennych $a
i $b
i odświeżając stronę – wynik zmieni się odpowiednio. W ten sposób można wykonywać dowolne obliczenia: odejmowanie (-
), mnożenie (*
), dzielenie (/
), modulo (%
– reszta z dzielenia) itp., oraz bardziej złożone operacje matematyczne przy użyciu funkcji PHP (np. pow(2, 3) zamiast 2**3
dla potęgi, choć od PHP 5.6 operator **
też jest dostępny).
Przykład 3: Formularz HTML i przetwarzanie danych w PHP
PHP pokazuje pełnię swoich możliwości, gdy współpracuje z formularzami HTML, umożliwiając tworzenie interaktywnych aplikacji webowych. Pokażemy teraz prosty przykład składający się z dwóch plików:
formularz.html
– zawierający formularz HTML, w którym użytkownik może wpisać swoje imię.witaj.php
– skrypt PHP, który odbiera dane z formularza i generuje stronę z powitaniem użytkownika.
Plik formularz.html:
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8" />
<title>Przykładowy formularz</title>
</head>
<body>
<form action="witaj.php" method="POST">
<label>Podaj swoje imię:
<input type="text" name="imie" />
</label>
<button type="submit">Wyślij</button>
</form>
</body>
</html
>
To jest czysty HTML. Mamy tutaj element <form>
z atrybutem action="witaj.php"
– oznacza to, że po wysłaniu formularza (przycisk „Wyślij”) dane z niego zostaną przesłane do pliku witaj.php
. method="POST"
wskazuje, że użyjemy metody POST (dane nie pojawią się w URL, zostaną przesłane w tle). Wewnątrz formularza jest etykieta z polem tekstowym <input type="text" name="imie" />
. Atrybut name="imie"
jest kluczowy – to pod tą nazwą wartość wpisana przez użytkownika będzie dostępna dla skryptu PHP. Mamy też przycisk submit do wysłania.
Teraz plik witaj.php
, który obsłuży dane:
<?php
$imie = $_POST["imie"]; // pobranie wartości pola o nazwie 'imie' z wysłanego formularza
echo "<h2>Witaj, " . htmlspecialchars($imie) . "!</h2>"; // wyświetlenie powitania
?>
Omówienie działania:
- Użytkownik otwiera stronę
formularz.html
(np. przezhttp://localhost/formularz.html
). Widzimy pole do wpisania imienia i przycisk. - Użytkownik wpisuje np. Anna i klika „Wyślij”. Przeglądarka wysyła żądanie do serwera pod adres
witaj.php
, przekazując w nim dane formularza (tutaj jedno poleimie=Anna
). - Skrypt
witaj.php
zostaje wykonany. Zmienna$_POST
w PHP to tzw. superglobalna tablica asocjacyjna, która zawiera wszystkie dane przesłane metodą POST (analogicznie$_GET
zawiera dane z URL, gdyby użyto GET). W naszym kodzie pobieramy wartość o kluczu"imie"
:$_POST["imie"]
. Przypisujemy ją do zmiennej$imie
. - Następnie wyświetlamy powitanie: używamy
echo
z kodem HTML<h2>
, w którym wstawiamy wartość zmiennej$imie
. Używamy tutaj funkcjihtmlspecialchars($imie)
, która zamienia ewentualne specjalne znaki HTML na encje – to zabezpieczenie, aby np. jeśli ktoś wpisał znaki<
>
w formularzu, nie zostały one potraktowane jak kod HTML (to kwestia bezpieczeństwa i poprawności wyświetlania, zawsze warto stosować taką funkcję przy wyświetlaniu danych pochodzących od użytkownika). - Jeśli Anna wysłała formularz, zmienna
$imie
zawiera „Anna”. W efekcieecho
wypisze:<h2>Witaj, Anna!</h2>
– czyli na stronie zobaczymy nagłówek „Witaj, Anna!” w rozmiarze H2.
Po zrealizowaniu tych kroków przeglądarka wyświetli użytkownikowi wynik wygenerowany przez witaj.php
. Będzie to prosta strona z powitaniem. Możemy rozbudowywać ten przykład – np. dodać więcej pól w formularzu (nazwisko, wiek, itp.) i odbierać je w PHP przez kolejne odwołania do $_POST["nazwa_pola"]
, a następnie coś z nimi robić (np. wyświetlić lub zapisać do bazy danych).
Podsumowanie kroków:
- Tworzymy formularz HTML z polami i wskazaniem skryptu PHP do obsługi (
action
). - Użytkownik wypełnia formularz i wysyła go.
- PHP odbiera dane poprzez specjalne zmienne (
$_POST
lub$_GET
) i może ich użyć w kodzie. - Na podstawie tych danych PHP generuje dynamicznie odpowiedź (np. personalizowany komunikat).
- Użytkownik widzi stronę wygenerowaną przez PHP zawierającą wykorzystane dane z formularza.
Dzięki takiemu mechanizmowi powstają interaktywne strony: logowanie (formularz login/hasło -> weryfikacja PHP), wyszukiwarki, formularze kontaktowe, rejestracje użytkowników, ankiety i wiele innych elementów, które reagują na dane od użytkownika.
Zakończenie
W tym wykładzie przedstawiliśmy podstawy języka PHP – od jego historii i zastosowań, przez narzędzia potrzebne do uruchamiania i pisania kodu, aż po elementy składni i proste przykłady. PHP, jako jeden z najpopularniejszych języków skryptowych po stronie serwera, posiada ogromną społeczność i mnóstwo materiałów pomocniczych. Dzięki temu nauka PHP jest ułatwiona – w internecie znajdziesz wiele tutoriali, forów (np. Stack Overflow) oraz dokumentację na oficjalnej stronie php.net.
Jeśli dopiero zaczynasz, sugerujemy: eksperymentuj z kodem samodzielnie. Weź powyższe przykłady, zmieniaj je, rozszerzaj. Spróbuj napisać prostą stronę wykorzystującą PHP – np. stronę, która pozdrowi Cię imieniem, policzy coś na żądanie lub zapisze informacje o odwiedzających do pliku. Praktyka jest najlepszym sposobem na opanowanie programowania. PHP wynagrodzi Cię szybkim widocznym rezultatem (działająca strona), co czyni naukę satysfakcjonującą.
Powodzenia w dalszej nauce PHP! Nie bój się popełniać błędów – analizując je i poprawiając, zdobywasz cenną wiedzę. Mamy nadzieję, że to wprowadzenie okazało się pomocne i zachęci Cię do dalszego zgłębiania tajników programowania w PHP. Wszystko w Twoich rękach – Hello, PHP World!