PHP… Co i jak?

Tajemniczy język działający na “zapleczu“….

W zasadzie… On dosłownie działa na zapleczu, jest to język programowania używany na “back endzie” strony internetowej, czyli tłumacząc dosłownie — na jej zapleczu, dla porównania JavaScript, działa na front endzie, czyli z przodu — na komputerze klienta.

No dobrze, tradycyjnie tak jak w ostatnim artykule, przejdźmy do sedna, naszego merytorycznego artykułu:

Czym jest PHP?

Gdy mówimy o podstawowych językach programowania, których każdy powinien się nauczyć, aby tworzyć strony internetowe, odpowiedź jest stosunkowo jasna: nie możesz się mylić, zaczynając od trio HTML, CSS i JavaScript. (Chyba każdy o tym słyszał) W przypadku niektórych innych języków może się to stać nieco bardziej nie oczywiste, chociaż w kręgach technicznych słyszy się o tym, czy są one pomocne w nauce przyszłych programistów i do czego dokładnie są one używane. Jednym z języków programowania, o których na pewno usłyszysz wzmianki, gdy postanowisz zanurzyć się, choć odrobinę w głębokie odmęty forów technicznych, jest PHP. Więc czym jest ten tajemniczy język i czy jest to użyteczny dla początkujących programistów, czy nadaje się on do nauki programowania stron internetowych? Przekonaj się sam, czytając dalej ten artykuł. 

Kolejny język skryptowy – tak jak JavaScript

PHP (akronim od PHP: Hypertext Preprocessor) jest językiem skryptowym (Gdzieś już to słyszałem), który jest powszechnie używany przy tworzeniu stron internetowych “po stronie serwera“. (Nie martw się, spróbuję ci to w dalszej części wyjaśnić). Aby to wszystko uporządkować, ważne jest, aby najpierw zrozumieć, czym jest język skryptowy. Języki skryptowe (rodzina języków programowania obejmująca PHP, a także takie języki jak JavaScript i Ruby) są podzbiorem języków programowania używanych do automatyzacji procesów, które w przeciwnym razie musiałyby być wykonywane krok po kroku w kodzie strony za każdym razem, gdy się pojawią.(Tak jak o tym pisałem przy okazji JavaScript. Nadal niefajnie, bardzo nadal niefajnie 😱)

Obejmuje to takie rzeczy jak okna dialogowe otwierające się na ekranie w odpowiedzi na działania użytkownika, czat boty reagujące na określone zachowanie użytkownika odpowiednimi komunikatami lub animacje, które pojawiają się, gdy użytkownik przewinie się przez określony punkt na stronie — wiele dynamicznych funkcji witryny, które muszą wystąpić na ekranie bez konieczności ręcznego przeładowania witryny. Języki skryptowe, takie jak PHP, różnią się od innych języków, takich jak HTML czy CSS w tym sensie, że podczas gdy HTML i CSS określają układ i wygląd stron internetowych, języki skryptowe mówią statycznej stronie internetowej (zbudowanej z HTML i CSS), aby “wykonać” konkretne działania. Jeśli spędziłeś jakikolwiek czas, czytając wcześniejszy artykuł o JavaScript, może to brzmieć podejrzanie znajomo. Czy zatem PHP jest tylko kolejnym sposobem na osiągnięcie tego, co można zrobić z JavaScriptem?… Nie. (  😲   )

PHP działa po stronie serwera

Jak pisałem wcześniej, PHP jest zazwyczaj używany jako język działający po stronie serwera (w przeciwieństwie do języków takich jak JavaScript, które są zazwyczaj wykorzystywane po stronie klienta, o JavaScripcie pisałem w swoim wcześniejszym artykule). Więc co to oznacza? W rozumieniu programowania strona klienta odnosi się do aktywności internetowej, która odbywa się lokalnie na komputerze użytkownika poprzez przeglądarkę internetową użytkownika (czyli naszą). Języki operujące po stronie klienta, takie jak HTML, CSS i JavaScript, przekazują instrukcje, które przeglądarki internetowe mogą analizować i tłumaczyć na zawartość ekranu komputera. Warto zauważyć, że JavaScript (język skryptowy taki jak PHP) znajduje się na tej liście. Przypominając, procesy opisywane i wykonywane przez JavaScript, odbywają się one po stronie klienta, JS dostarcza instrukcje, które mogą być zrozumiałe i wykonywane w naszej przeglądarce internetowej. Strona klienta jest tą stroną, którą widzimy podczas korzystania z Internetu.

Z drugiej strony, aktywność po stronie serwera polega na wysyłaniu przez przeglądarkę internetową zapytań do serwera (oprogramowania lub sprzętu, który przechowuje strony internetowe, obrazy, media i inne zasoby), który następnie odpowiada na zapytanie kodem HTML, który może zostać przetworzony i wyrenderowany przez przeglądarkę internetową, oraz ostatecznie zamieniony na treść na ekranie użytkownika. Główną różnicą w stosunku do aktywności po stronie klienta jest fakt, że proces ten obejmuje komunikację z serwerem i nie jest zakończony w całości w przeglądarce klienta. Innymi słowy, język skryptowy po stronie klienta, taki jak JavaScript, może zautomatyzować zadania związane z treściami, które są już dostępne dla użytkownika w jego przeglądarce internetowej, ale język skryptowy po stronie serwera, taki jak PHP, jest używany do żądania treści z serwera lub bazy danych witryny i sprawia, że treści te są widoczne i dostępne dla użytkownika strony. W celu utrzymania wydajności strony internetowej, czyli szybkości ładowania i dostępnej pamięci, nie wszystkie zasoby mogą być przez cały czas przechowywane lokalnie na stronach internetowych.

Dla przykładu skrypt PHP może sprawić, że trzy najnowsze wpisy na naszym blogu, pojawią się automatycznie na stronie głównej witryny. W tym przypadku same posty są przechowywane na serwerze strony i wywoływane, tylko wtedy gdy oznaczone są jako trzy ostatnio opublikowane wpisy. Unika się w ten sposób zarówno wstępnego zbędnego ładowania postów na Twojej stronie, jak i ułatwia pracę administratora strony, nie musi on ładować i aktualizować postów, gdy nowe historie są publikowane. Skrypty PHP mogą również zawierać instrukcje warunkowe (if/else/endif), które sterują Twoją stroną, zmieniając jej wygląd czy dodając treści z Twojego serwera w zależności od potrzeb. Może to obejmować takie działania jak warunkowanie, że jeśli administrator strony wyśle link wideo do pola “x”, wówczas strona załaduje wideo ze swojego serwera i wyświetli je użytkownikowi (Całkiem fajne, prawda?). Skrypt może dalej stwierdzić, że jeśli administrator nie załaduje linku, to zamiast tego na stronie pojawi się domyślny obrazek “y”. Działania po stronie serwera PHP wprowadzają zupełnie nowy poziom dynamicznych możliwości strony (poza statycznymi rozwiązaniami oferowanymi przez HTML i CSS, a nawet dynamiczną treścią po stronie klienta, którą umożliwia JavaScript).

Podsumowując

PHP nie jest ważniejszy od HTML-u, CSS-a ani JavaScriptu i nie jest też wyżej na liście obowiązkowych umiejętności programistów stron internetowych — jest to umiejętność, którą każdy z nas, kto chce uzupełnić swój magazyn narzędzi programistycznych, powinien posiąść. A już na pewno, każdy powinien przynajmniej rozważyć dodanie do swojego zasobu umiejętności. Oczywiście możliwe jest budowanie statycznych stron internetowych wyłącznie z użyciem HTML-u i CSS-a (oraz budowanie stron z dynamiczną zawartością przy użyciu JavaScriptu), ale wprowadzenie do mieszanki języka serwerowego drastycznie zwiększy ilość stron, z którymi możemy „rywalizować” na równi i jeśli tworzymy jakąś poważną witrynę biznesową, klientów zaskoczonych naszą stroną. W szczególności PHP da Ci również dostęp do wspaniałego świata personalizacji swojej witryny. Jeśli popatrzeć na świat programowania jak na alfabetyczną zupę języków — PHP to trzy litery, o których raczej powinieneś pamiętać (Mogą być też całkiem smaczne, i przydać się nie jeden raz).

Koniec.

Jeżeli nie czytałeś jeszcze poprzednie artykułu, na temat JavaScriptu a chcesz zgłębić wiedzę na temat tego języka, zapraszam cię do mojego ostatniego wpisu: https://skiprzeworsk.eu/javascript-co-i-jak/

Dodaj komentarz