PHP 8

PHP 8 jest już dostępny dla szerokiego grona odbiorców. To duża aktualizacja tego znanego języka, który znajduje szerokie zastosowanie podczas tworzenia stron i aplikacji na smartfony. Wiele dostępnych opcji daje nowe możliwości, których trudno było się doszukiwać w wersji 7.4 Jakie funkcjonalności zostały wprowadzone i czemu są tak istotne?

Czym w ogóle jest PHP?

Kilka słów wstępu dla osób, które nie mają jeszcze zbyt dużego pojęcia o językach programowania. To właśnie w oparciu o PHP tworzone są najpopularniejsze systemy, dzięki którym można zarządzać danymi. Wśród nich można wskazać choćby WooCommerce, który jest powszechnie wykorzystywany do tworzenia sklepów internetowych. Gdyby nie zastosowano do niego PHP, sklep pozostałby tylko ciągiem mniej lub bardziej zrozumiałych znaków. WordPress i WooCommerce przetwarza dane i daje efekt końcowy – czyli to, co widzimy w postaci sklepu internetowego z koszykiem, panelem klienta i kompletną listą dostępnych towarów.

Jak każde narzędzie do programowania, również język PHP jest regularnie poddawany ulepszeniom. Wszystko po to, by tworzenie z jego pomocą było prostsze, a przy tym – by strony reagowały jeszcze efektywniej. Tak naprawdę to właśnie podstawowe założenie podczas tworzenia nowszych wersji PHP – lepsza responsywność stron.

Obecnie ukazała się nowa, ósma już wersja PHP. Z każdą kolejną wprowadzane są ulepszenia, które mają wpłynąć korzystnie na usprawnienie pracy z językiem. Mają również zapewnić jeszcze więcej możliwości. Warto jednak pamiętać, że nie każdy program wykazuje kompatybilność z najnowszą wersją PHP – choć w znacznej większości przypadków właśnie tak jest. Warto jednak upewnić się w tej kwestii jeszcze przed rozpoczęciem kodowania, aby oszczędzić sobie pracy i ewentualnych poprawek.

Każde nowe oprogramowanie musi przejść szereg testów, dzięki którym producent ma pewność jeśli chodzi o stabilność i bezpieczeństwo. W przypadku PHP 8, faza testów dobiegła już końca, dzięki czemu możliwe jest już użytkowanie go. Co wdraża najnowsza, ósma wersja PHP?

Named arguments

W zakresie tzw. nazywanych argumentów wprowadzono zdecydowane ulepszenie w stosunku do PHP 7.4. Nie musisz już zawierać ich w kolejności, jaką prezentowała wspomniana, poprzednia wersja PHP. Możesz po prostu pominąć te argumenty, które są niepotrzebne. To sprawia, że zapis jest prostszy i tym samym ogranicza się ryzyko ewentualnego błędu.

Brak konieczności kopiowania poprzedzających argumentów opiera się na nazwie konkretnego argumentu – nie jego wartości. To właśnie dzięki temu możliwe było wdrożenie zmian.

JIT

Wymieniając nowości w PHP 8, nie sposób nie wspomnieć o JIT, który jest skrótem od „just in time” („w samą porę”). Co ciekawe, funkcja ta miała właściwie znaleźć się w PHP już kilka wersji temu, jednak wciąż okazywało się, że nie jest to z różnych względów możliwe, a twórcy wypróbowywali szereg innych, mniej lub bardziej skutecznych opcji. Wreszcie, twórcy PHP postanowili podążyć szlakiem wytyczonym przez twórców Facebooka i wdrożyć pokrewne HHVM i Hack – JIT.

Aby dokładnie objaśnić działanie JIT, należy zrozumieć, że kod, który widzimy po napisaniu go, nie jest „zrozumiały” dla procesora CPU – który musi go w pierwszej kolejności niejako zrozumieć i zinterpretować. Jako że PHP należy do tzw. języków interpretowanych, działanie to musi być podejmowane każdorazowo, przy każdym użyciu PHP. To, jak można się domyślić, wykazuje bardzo negatywny wpływ na optymalne działanie.

JIT ma za zadanie niejako skrócić czas reakcji i uprościć cały proces. Odbywa się to poprzez swego rodzaju „śledzenie” kodu i wykrywanie najczęściej powtarzalnych jego fragmentów i wytwarza coś, co można porównać do pamięci cache (czyli pamięci podręcznej, która ma za zadanie odciążyć urządzenie i przyspieszyć jego działanie). Dzięki temu, niektóre fragmenty kodu pomija się  podczas interpretacji, co znacznie skraca czas reakcji procesora CPU i wykonanie kodu.

Attributes

Attributes, czyli po polsku po prostu atrybuty (lub inaczej: adnotacje). Niegdyś mogły być odczytywane tylko i wyłącznie przez dedykowane biblioteki (np. Doctrine ORM), a w tej chwili – stanowią integralny element całego języka. To zdecydowane uproszczenie i jeszcze więcej możliwości podczas kodowania stron z językiem PHP 8. Dla ich przedstawienia wybrane zostały podwójne znaki mniejszości oraz większości w formie otwarcia i zamknięcia.

Match Expression

Nie należy łączyć tej funkcjonalności z regularnymi wyrażeniami, choć nazwa właściwie mogłaby to sugerować. Korzystają z match expression, możliwe jest uzyskanie niezbędnej wartości bez konieczności podawania dodatkowych słów kluczowych, takich jak return czy break. Wystarczający jest sam parametr wejściowy.

str_contains()

To opcja, dzięki której możesz zapomnieć o korzystaniu z funkcji strpos. Ta funkcja sprawdza wartości w tle i pomaga wychwycić, czy zwracany wynik różni się od FALSE. To zdecydowane ułatwienie podczas pracy z PHP 8.

Constructor property promotion

Dzięki constructor property promotion, wzrasta czytelność klas. Dzieje się tak dzięki możliwości przypisywania dużo większej ilości argumentów w konstruktorze.

Szereg innych opcji PHP 8

Wyżej wskazane udogodnienia są tylko najistotniejszymi w naszym odczuciu zmianami, jakie wdraża PHP 8. Oprócz tego, z najnowszą wersją PHP pojawia się również szereg innych udogodnień, takich jak union types. Dzięki wszystkim obecnie dostępnym opcjom, praca z PHP 8 jest znacznie przyjemniejsza i prostsza. Z pewnością znajdzie się wiele osób, które uznają, że w najnowszej wersji wciąż można coś poprawić (co nie jest nietrafionym stwierdzeniem, jeśli się weźmie pod uwagę, że zawsze można coś poprawić). Ciężko odmówić twórcom PHP 8 dużego wysiłku włożonego w odpowiednie opracowanie języka w najświeższym wydaniu.

Choć, jak wspominaliśmy wyżej, w niektórych wypadkach korzystanie z PHP w ósmej wersji może okazać się niekorzystne lub wręcz niemożliwe, w większości przypadków to najbardziej pożądane obecnie rozwiązanie. Z tego względu warto się z nim zapoznać.

To top