PHP

Skryptowy język działający po stronie serwera, popularny w tworzeniu dynamicznych stron WWW. Napędza m.in. WordPressa i wiele systemów CMS.

PHP (rekurencyjny skrótowiec od PHP: Hypertext Preprocessor) to skryptowy język programowania działający po stronie serwera, stworzony przede wszystkim z myślą o budowaniu dynamicznych stron i aplikacji WWW. Zamiast wysyłać do przeglądarki gotowy, statyczny plik HTML, serwer najpierw uruchamia kod PHP, ten generuje treść (np. pobiera dane z bazy), a do użytkownika trafia dopiero finalny HTML. Dlatego ta sama strona może pokazać Tobie inny koszyk niż mnie, mimo że adres jest identyczny.

Jak to działa i do czego służy

Kiedy wpisujesz adres, Twoja przeglądarka wysyła żądanie do serwera. Tam interpreter PHP (najczęściej w połączeniu z serwerem WWW jak Nginx lub Apache i bazą MySQL/MariaDB — stąd słynny stos LAMP) wykonuje skrypt: sprawdza, czy jesteś zalogowany, odpytuje bazę, składa stronę i odsyła czysty HTML. Kod PHP nigdy nie wychodzi do klienta, więc Twoje hasła i logika aplikacji zostają na serwerze.

PHP napędza ogromną część internetu — głównie dlatego, że stoi za WordPressem, a także frameworkami jak Laravel czy Symfony i sklepami w stylu WooCommerce czy Magento. Jest łatwy na start, działa na praktycznie każdym hostingu i ma gigantyczną społeczność.

Przykład z praktyki

Najprostszy skrypt zapisujesz w pliku index.php:

Lokalnie odpalisz to bez żadnego Apache — wbudowanym serwerem deweloperskim: php -S localhost:8000. Wejdziesz na localhost:8000/?imie=Ania i zobaczysz spersonalizowane powitanie. Zależności w realnym projekcie zainstalujesz menedżerem Composer komendą composer install — to dziś standard, nie opcja.

Częste błędy i mity

Mit pierwszy: „PHP to wolny relikt z lat 90.”. Współczesne wersje (aktualnie linia PHP 8.x, z JIT-em i typowaniem) są szybkie i schludne — nie myl ich z przykładami z 2005 roku. Mit drugi: kopiowanie kodu z losowego forum, gdzie zapytania do bazy sklejane są ze stringów — to prosta droga do SQL injection. Używaj prepared statements (PDO) i zawsze filtruj dane od użytkownika przez htmlspecialchars() przy wyświetlaniu. Trzecia pułapka klasyka: biała strona zamiast błędu. Włącz display_errors na środowisku deweloperskim albo zajrzyj do logów, zamiast zgadywać.

Pojęcia powiązane

Warto znać: Composer, Laravel, Symfony, WordPress, MySQL, PDO, stos LAMP, Apache, Nginx, a po stronie frontendu HTML, CSS i JavaScript — bo PHP rzadko pracuje sam.