PHP 8.4 – co nowego w najnowszej wersji!

PHP 8.4 to kolejna odsłona popularnego języka programowania, która przynosi wiele ekscytujących zmian i ulepszeń. Jeśli jesteś programistą lub pasjonujesz się tworzeniem stron internetowych, nie możesz tego przegapić! W tym artykule zaprezentujemy Ci najważniejsze nowości w PHP 8.4 oraz jak mogą one wpływać na Twoją pracę.

Jednym z głównych punktów jest wprowadzenie kontrastu między poprzednimi wersjami a PHP 8.4. Zauważysz znaczną różnicę w wydajności i elastyczności tego języka programowania. Nowe funkcje takie jak „Union Types” czy „Attributes” otwierają przed Tobą zupełnie nowe możliwości podczas tworzenia aplikacji webowych.

Nie czekaj dłużej – dowiedz się więcej o tym, co oferuje PHP 8.4! Przejdź do następnej części artykułu, aby poznać szczegóły tych fascynujących aktualizacji.

Podsumowanie

  • PHP 8.4 wprowadza wiele nowych funkcji i usprawnień, które mogą poprawić wydajność i funkcjonalność Twojej aplikacji.
  • Aby sprawdzić i zmienić wersję PHP, możesz skorzystać z poleceń wiersza poleceń lub narzędzi takich jak XAMPP lub MAMP.
  • PHP 8.4 oferuje poprawioną wydajność w porównaniu do poprzednich wersji, dzięki optymalizacjom i usprawnieniom w silniku PHP.
  • Nowe funkcje w PHP 8.4, takie jak słabe mapy i wyrażenia dopasowania, argumenty nazwane i typy unii oraz promowanie właściwości konstruktora, mogą ułatwić i usprawnić Twój kod.
  • Atrybuty v2 i wyrażenia rzutowe to kolejne nowości w PHP 8.4, które pozwalają na bardziej elastyczną manipulację danymi.
  • Ogólne zmiany i nowe funkcjonalności w PHP 8.4 sprawiają, że jest to wartościowa aktualizacja dla programistów PHP.

Nowości w PHP 8.4

Wsparcie dla argumentów nazwanych

Wraz z wprowadzeniem PHP 8.4, programiści otrzymują nową funkcjonalność – wsparcie dla argumentów nazwanych. To oznacza, że teraz mogą przekazywać argumenty do funkcji lub metody używając ich nazwy, a nie tylko kolejności.

Na przykład, jeśli mamy funkcję przywitaj($imie, $nazwisko), możemy jawnie określić wartość jednego lub obu argumentów podczas wywoływania funkcji: przywitaj(nazwisko: ‚Kowalski’, imie: ‚Jan’). Dzięki temu łatwiej jest czytać i zrozumieć kod oraz uniknąć pomyłek wynikających z nieodpowiedniej kolejności argumentów.

Poprawiona wydajność interpretera

PHP 8.4 wprowadza również poprawki mające na celu zwiększenie wydajności interpretera. Dzięki tym zmianom skrypty napisane w PHP będą działały szybciej i bardziej responsywnie.

Jedną z głównych optymalizacji jest zoptymalizowanie mechanizmu kompilacji just-in-time (JIT). JIT to technika polegająca na tłumaczeniu kodu źródłowego na postać natywną bezpośrednio przed jego wykonaniem. W efekcie skrypty PHP będą uruchamiane jeszcze szybciej niż wcześniej.

Dodatkowo, w PHP 8.4 zaimplementowano również inne usprawnienia dotyczące zarządzania pamięcią i optymalizacji kodu, które przyczyniają się do ogólnej poprawy wydajności interpretera.

Zaktualizowana biblioteka standardowa

Wraz z nową wersją PHP, zaktualizowana została biblioteka standardowa. Biblioteka ta zawiera wiele przydatnych funkcji i klas, które są podstawą dla wielu aplikacji napisanych w PHP.

Aktualizacje biblioteki standardowej mogą obejmować dodanie nowych funkcji lub metod oraz poprawienie istniejących. Dzięki temu programiści mają dostęp do jeszcze większego zakresu narzędzi i możliwości, co ułatwia tworzenie zaawansowanych aplikacji webowych.

Jak sprawdzić i zmienić wersję PHP

Sprawdź aktualną wersję PHP za pomocą komendy php -v

Aby dowiedzieć się, jaka jest obecna wersja PHP na twoim serwerze, możesz użyć prostej komendy. Wystarczy otworzyć terminal lub konsolę i wpisać polecenie php -v. Po naciśnięciu Enter zobaczysz informacje o zainstalowanej wersji PHP oraz inne szczegóły dotyczące konfiguracji.

Na przykład, jeśli obecnie masz zainstalowaną wersję 8.3.2, wynik może wyglądać mniej więcej tak:

PHP 8.3.2 (cli) (built: Jan 12 2022 15:25:34) ( NTS )

Dzięki tej prostej komendzie można szybko sprawdzić, czy posiadasz najnowszą dostępną wersję PHP na swoim serwerze.

Aby zmienić wersję PHP, edytuj plik konfiguracyjny serwera

Jeśli chcesz zmienić obecną wersję PHP na inną, musisz dokonać pewnych modyfikacji pliku konfiguracyjnego swojego serwera. Ten plik różni się dla różnych systemów operacyjnych i środowisk hostingowych.

Przykładowo:

  • Jeśli korzystasz z Apache jako serwera HTTP i masz dostęp do panelu administracyjnego cPanel lub Plesk, będziesz mógł zmienić wersję PHP za pomocą interfejsu graficznego.
  • Jeśli używasz serwera Nginx, możesz musieć edytować plik konfiguracyjny Nginx bezpośrednio.

Niektóre popularne środowiska hostingowe mają również narzędzia, które umożliwiają łatwe zarządzanie wersjami PHP. Możesz skorzystać z tych narzędzi, jeśli są dostępne dla twojego konta hostingowego.

W przypadku samodzielnego hostingu lub dedykowanego serwera może być konieczne ręczne edytowanie pliku konfiguracyjnego. Plik ten może nazywać się php.ini lub mieć inną nazwę w zależności od systemu operacyjnego i używanego oprogramowania serwerowego.

Wydajność PHP 8.4 vs poprzednie wersje

Poprawa wydajności

PHP 8.4 oferuje znaczną poprawę wydajności w porównaniu do poprzednich wersji. Dzięki optymalizacjom i nowym funkcjom, aplikacje działają szybciej i bardziej efektywnie.

Szybsze wykonanie kodu

Jednym z głównych powodów, dla których PHP 8.4 jest szybszy od swoich poprzedników, są optymalizacje silnika PHP. Nowe techniki kompilacji oraz zoptymalizowane algorytmy przetwarzania kodu sprawiają, że interpreter może wykonywać skrypty PHP jeszcze sprawniej.

Na przykład, wprowadzono tzw. „just-in-time” (JIT) kompilację w celu usprawnienia wykonywania kodu PHP. JIT to technika polegająca na dynamicznym tłumaczeniu często używanego kodu maszynowego bezpośrednio na poziomie CPU podczas jego uruchamiania. Dzięki temu można osiągnąć większą wydajność niż tradycyjne metody interpretacji języka programowania.

Zoptymalizowane operacje tablicowe

Wydajność operacji na tablicach została również znacznie ulepszona w PHP 8.4 dzięki wprowadzeniu nowych funkcji i optymalizacji istniejących mechanizmów.

Przykładem jest optymalizacja kopiowania tablic. Wcześniej, gdy kopiowano jedną tablicę do drugiej, PHP musiał fizycznie skopiować wszystkie elementy z jednej tablicy do drugiej. Jednak w PHP 8.4, dzięki nowej optymalizacji, kopie są tworzone tylko wtedy, gdy faktycznie dokonuje się zmiany wartości w kopii.

Wydajniejsze operacje na stringach

PHP 8.4 wprowadza również kilka usprawnień dotyczących operacji na stringach.

Na przykład, funkcje takie jak str_contains i str_starts_with zostały zoptymalizowane pod względem wydajności. Teraz te funkcje działają szybciej niż wcześniej, co przekłada się na lepszą wydajność aplikacji.

Nowe funkcje w PHP 8.4

Wprowadzono słabe mapy

W PHP 8.4 wprowadzono nową funkcjonalność, która z pewnością ułatwi manipulację danymi – słabe mapy. Słabe mapy są strukturami danych, które umożliwiają przechowywanie i operowanie na kluczach i wartościach. Dzięki nim możemy szybko dodawać, usuwać i modyfikować elementy w naszych zbiorach danych.

Przykładem użycia słabych map może być sytuacja, gdy chcemy przechowywać informacje o produktach w sklepie internetowym. Każdy produkt ma unikalny identyfikator (klucz) oraz różne atrybuty (wartości), takie jak nazwa, cena czy dostępność. Wykorzystując słabe mapy, możemy łatwo dodać nowe produkty do naszego zbioru danych lub zmienić ich atrybuty w prosty sposób.

Słabe mapy są bardzo elastycznymi strukturami danych, ponieważ nie musimy określać wcześniej typów kluczy ani wartości podczas tworzenia kolekcji. Możemy dowolnie dodawać elementy o różnych typach i korzystać z nich później bez żadnych problemów.

Dodano wyrażenia dopasowania

Kolejną ważną nowością wprowadzoną w PHP 8.4 są wyrażenia dopasowania, które umożliwiają bardziej elastyczne przetwarzanie ciągów tekstowych. Wyrażenia dopasowania pozwalają nam na wykonywanie złożonych operacji na łańcuchach znaków, takich jak sprawdzanie czy dany wzorzec występuje w tekście, pobieranie konkretnych fragmentów tekstu czy zamiana pewnych elementów.

Przykładem użycia wyrażeń dopasowania może być sytuacja, gdy chcemy sprawdzić, czy podany adres email ma poprawny format. Dzięki wyrażeniom dopasowania możemy skonstruować odpowiedni wzorzec i łatwo sprawdzić, czy dany adres spełnia nasze wymagania.

Słabe mapy i wyrażenia dopasowania

Słabe mapy – nowa struktura danych w PHP 8.4

W PHP 8.4 wprowadzono nową strukturę danych, znane jako słabe mapy. Co to takiego? Słabe mapy pozwalają nam przechowywać klucze o różnych typach. Wcześniej, w tradycyjnych tablicach asocjacyjnych, klucze musiały być zawsze tego samego typu. Jednakże słabe mapy dają nam większą elastyczność.

Na przykład, jeśli chcielibyśmy stworzyć tablicę asocjacyjną zawierającą dane użytkowników, moglibyśmy używać ich identyfikatorów jako kluczy. W przypadku tradycyjnej tablicy asocjacyjnej musielibyśmy zapewnić, że wszystkie identyfikatory są tego samego typu (np. integer). Jednak dzięki słabym mapom możemy mieć różne typu kluczy dla różnych użytkowników.

Słabe mapki są szczególnie przydatne w sytuacjach, gdy mamy do czynienia z danymi o nieznanych lub zmieniających się typach kluczy.

Wyrażenia dopasowania – precyzja wyszukiwania wzorców

Kolejnym interesującym dodatkiem w PHP 8.4 są wyrażenia dopasowania (ang. pattern matching). Dzięki nim możemy przeprowadzać bardziej precywizne wyszukiwanie wzorców w ciągach tekstowych. Wyrażenia dopasowania pozwalają nam na sprawdzenie, czy dany ciąg spełnia określone kryteria.

Na przykład, jeśli chcemy sprawdzić, czy dany adres email jest poprawny, możemy użyć wyrażeń dopasowania do zdefiniowania wzorca dla prawidłowego adresu email. Jeśli przekazany ciąg pasuje do tego wzorca, możemy uznać go za poprawny.

Wyrażenia dopasowania są bardzo potężnym narzędziem i mogą być stosowane w różnych kontekstach. Mogą pomóc nam w walidacji danych wejściowych, parsowaniu skomplikowanych struktur danych lub nawet w tworzeniu bardziej zaawansowanych algorytmów.

Argumenty nazwane i typy unii

Argumenty nazwane

Argumenty nazwane to nowa funkcjonalność wprowadzona w PHP 8.4, która umożliwia przekazywanie argumentów do funkcji za pomocą ich nazw. Dzięki temu programiści mogą jasno określić, jakie wartości są przekazywane do danej funkcji, co zwiększa czytelność kodu i ułatwia jego pisanie oraz utrzymanie.

Kiedy używasz argumentów nazwanych, nie musisz już martwić się o kolejność podawania argumentów podczas wywoływania funkcji. Możesz po prostu podać wartość dla danego argumentu poprzez jego nazwę, a interpreter PHP sam zadba o to, aby odpowiednio dopasować wartość do właściwej zmiennej wewnątrz funkcji.

Na przykład, jeśli mamy taką definicję funkcji:

php function dodaj($liczba1, $liczba2) {  return $liczba1 + $liczba2; }

Dotychczas musielibyśmy wywołać tę funkcję w ten sposób:

php dodaj(5, 3);

Jednak teraz możemy skorzystać z argumentów nazwanych i napisać:

php dodaj(liczba1: 5, liczba2: 3);

To sprawia, że kod jest bardziej intuicyjny i łatwiejszy do zrozumienia dla innych programistów.

Typy unii

Kolejną nową funkcjonalnością w PHP 8.4 są typy unii. Pozwalają one na definiowanie zmiennych, które mogą przyjmować różne typy wartości. Wcześniej, gdy deklarowaliśmy zmienną, musieliśmy określić jej konkretny typ (np. int, string). Jednak teraz możemy użyć operatora | do określenia kilku możliwych typów dla danej zmiennej.

Na przykład:

php function wyswietlDane($dane) {  echo $dane; }

$liczba = 5; $nazwa = „PHP”;

Promowanie właściwości konstruktora

Atrybut „promoted”

Wraz z wprowadzeniem PHP 8.4, pojawił się nowy atrybut o nazwie „promoted”, który ma na celu ułatwienie inicjalizacji właściwości obiektu w konstruktorze. Ten atrybut umożliwia bardziej czytelne i skuteczne tworzenie obiektów, co przyczynia się do poprawy jakości kodu.

Aby lepiej zrozumieć działanie tego atrybutu, warto przyjrzeć się jego praktycznym zastosowaniom. Załóżmy, że mamy klasę Person, która posiada trzy właściwości: name, age i gender. Wcześniej musielibyśmy ręcznie definiować te właściwości w konstruktorze i przypisywać im wartość za pomocą argumentów. Na przykład:

php class Person {  private string $name;  private int $age;  private string $gender;

 public function __construct(string $name, int $age, string $gender) {  $this->name = $name;  $this->age = age;  this->$gender = gender;  } }

Jednak dzięki atrybutowi „promoted” możemy uprościc ten proces. Możemy teraz bezpośrednio promować nasze właściwośći w deklaracji konstruktora, eliminując potrzebę pisania dodatkowego kodu do ich inicjalizacji:

php class Person {  public function __construct(  private string $name,  private int $age,  private string $gender  ) {} }

Ten nowy sposób definiowania konstruktora jest znacznie bardziej czytelny i zwięzły. Wszystkie właściwości są teraz deklarowane bezpośrednio w nagłówku konstruktora, co ułatwia zrozumienie ich roli i znaczenia.

Przykład

Aby lepiej zilustrować korzyści wynikające ze stosowania atrybutu „promoted”, przyjrzyjmy się kolejnemu przykładowi. Załóżmy, że mamy klasę Rectangle, która ma dwie właściwości: width (szerokość) i height (wysokość).

Atrybuty v2 i wyrażenia rzutowe

Atrybuty v2 – nowa wersja mechanizmu atrybutów

Atrybuty to jedna z najciekawszych funkcji wprowadzonych w PHP 8.4, pozwalająca deweloperom dodawać metadane do kodu. Teraz, wersja 2 atrybutów (atrybuty v2) wprowadza jeszcze więcej możliwości i poprawek.

Atrybuty v2 oferują programistom dodatkowe funkcje, które ułatwiają zarządzanie kodem oraz dostarczają większej elastyczności. Na przykład, teraz możemy definiować atrybuty na poziomie klas abstrakcyjnych lub interfejsów, co wcześniej było niemożliwe. To daje nam większą kontrolę nad tym, jakie informacje chcemy przypisać do naszego kodu.

Dodatkowo, atrybuty v2 umożliwiają również tworzenie warunkowych reguł dotyczących ich używania. Możemy określić pewne warunki logiczne (np. jeśli dana wartość jest równa X), które muszą być spełnione przed użyciem danego atrybutu. To sprawia, że nasz kod staje się bardziej precyzyjny i łatwiejszy do zrozumienia.

Wyrażenia rzutowe – elastyczne przekształcanie danych

Wyrażenia rzutowe są kolejną ciekawą funkcją, wprowadzoną w PHP 8.4, która umożliwia bardziej elastyczne i precyzyjne przekształcanie danych. Rzutowanie to proces konwersji jednego typu danych na inny.

Wcześniej, rzutowanie było możliwe tylko dla kilku podstawowych typów danych (np. integer, string). Teraz jednak, dzięki wyrażeniom rzutowym możemy dokonywać bardziej złożonych przekształceń między różnymi typami danych.

Na przykład, jeśli mamy zmienną przechowującą wartość liczbową jako string i chcielibyśmy ją zamienić na liczbę całkowitą (integer), wcześniej musielibyśmy użyć odpowiedniej funkcji do tego celu.

Zmiany ogólne i nowe funkcjonalności

Poprawki błędów, usprawnienia interpretera i aktualizacje bibliotek

PHP 8.4 wprowadza wiele innych zmian, które mają na celu poprawę jakości języka programowania oraz optymalizację jego działania. Jednym z głównych obszarów zmian są poprawki błędów, które eliminują wcześniejsze niedoskonałości i zapewniają większą stabilność kodu. Dzięki tym poprawkom programiści mogą być pewni, że ich aplikacje będą działać bez zakłóceń.

Wraz z nową wersją PHP dostępne są również usprawnienia interpretera. Interpreter jest odpowiedzialny za przetwarzanie kodu źródłowego na kod maszynowy, który może być wykonany przez komputer. Dzięki tym usprawnieniom PHP staje się bardziej wydajny i szybszy w działaniu. Programiści mogą cieszyć się zwiększoną wydajnością swoich aplikacji bez konieczności modyfikowania istniejącego kodu.

Dodatkowo, PHP 8.4 zawiera aktualizacje bibliotek, które są często używane przez programistów do rozwijania różnych typów aplikacji internetowych. Aktualizacja tych bibliotek pozwala na korzystanie z najnowszych technologii i narzędzi, co przyczynia się do lepszej jakości finalnego produktu.

Wsparcie dla nowych protokołów i rozszerzeń

Nowe funkcjonalności w PHP 8.4 obejmują również wsparcie dla nowych protokołów oraz rozszerzeń. Protokoły są zestawem reguł, które określają sposób komunikacji między różnymi systemami lub aplikacjami. Dzięki wprowadzeniu wsparcia dla nowych protokołów programiści mogą tworzyć bardziej zaawansowane aplikacje, które integrują się z innymi systemami.

Rozszerzenia to dodatkowe moduły, które można dołączyć do języka PHP w celu rozszerzenia jego możliwości. Wprowadzenie wsparcia dla nowych rozszerzeń oznacza większe możliwości tworzenia innowacyjnych i rozbudowanych aplikacji.

W tym artykule przedstawiliśmy nowości w PHP 8.4 oraz omówiliśmy wydajność i nowe funkcje tej wersji. Dowiedzieliście się, jak sprawdzić i zmienić wersję PHP oraz poznaliście słabe mapy, wyrażenia dopasowania, argumenty nazwane, typy unii, promowanie właściwości konstruktora, atrybuty v2 i wyrażenia rzutowe. Poruszyliśmy również zmiany ogólne i nowe funkcjonalności.

PHP 8.4 wprowadza wiele ciekawych ulepszeń i usprawnień, które mogą znacząco poprawić pracę programistów. Jeśli jesteście deweloperami lub zainteresowani tematyką PHP, warto zaktualizować swoją wersję i wykorzystać wszystkie korzyści płynące z najnowszej wersji języka.

Dziękujemy za przeczytanie tego artykułu! Mamy nadzieję, że dostarczył on przydatnych informacji na temat PHP 8.4. Zachęcamy Was do eksperymentowania z nowymi funkcjami i udoskonalaniem Waszych projektów przy użyciu najnowszych możliwości tego języka programowania.

Często zadawane pytania

Jakie są nowości w PHP 8.4?

PHP 8.4 wprowadza kilka ciekawych nowości, takich jak słabe mapy i wyrażenia dopasowania, argumenty nazwane i typy unii, promowanie właściwości konstruktora oraz atrybuty v2 i wyrażenia rzutowe.

Jak sprawdzić i zmienić wersję PHP?

Aby sprawdzić wersję PHP na swoim serwerze, można użyć funkcji phpinfo(). Aby zmienić wersję PHP, trzeba zaktualizować plik .htaccess lub skontaktować się z dostawcą hostingu.

Czy PHP 8.4 jest bardziej wydajne od poprzednich wersji?

Tak, PHP 8.4 wprowadza wiele optymalizacji pod względem wydajności. Nowe funkcje takie jak słabe mapy i wyrażenia dopasowania przyczyniają się do szybszego działania aplikacji napisanych w tym języku.

Jakie są najważniejsze nowe funkcje w PHP 8.4?

Najważniejsze nowe funkcje w PHP 8.4 to słabe mapy i wyrażenia dopasowania, argumenty nazwane i typy unii oraz promowanie właściwości konstruktora. Te dodatki znacznie ułatwią programistom pisanie bardziej czytelnego kodu.

Co to są atrybuty v2 i wyrażenia rzutowe?

Atrybuty v2 to nowa wersja mechanizmu atrybutów wprowadzona w PHP 8.4, które umożliwiają dodawanie metadanych do klas i funkcji. Wyrażenia rzutowe natomiast pozwalają na bardziej elastyczne przekształcanie typów zmiennych.

Jakie są ogólne zmiany i nowe funkcjonalności w PHP 8.4?

Ogólne zmiany i nowe funkcjonalności w PHP 8.4 obejmują m.in. poprawki błędów, ulepszenia wydajności, rozszerzenie składni oraz aktualizacje bibliotek zewnętrznych używanych przez język PHP.

Do you need an estimation?

Say hi and reach out to us with project brief/info and we’ll get back to you with answers (and/or more questions!)

[email protected]
Plac Rodla 9, 70-419, Szczecin, Poland
Smiling Person
Smiling Person