Wersja PHP 8 jest już dostępna dla użytkowników hostingu w home.pl – co przynosi nowego i jak włączyć nową wersję interpretera?
Dzięki PHP działa niemal 80% stron internetowych na całym świecie. I choć programiści z coraz mniejszym entuzjazmem podchodzą do tworzenia aplikacji za pomocą tej technologii (głównie przez pojawienie się konkurencyjnych rozwiązań), to PHP wciąż jest rozwijane, a jego kolejne iteracje wprowadzają usprawnienia oraz przyśpieszają działanie stron internetowych. W końcu, gdyby nie on – nie byłoby między innymi WordPressa lub Joomli. 26 listopada 2020 roku miała miejsce globalna premiera PHP 8, a teraz można tę wersję włączyć także na hostingu w home.pl.
Okres wsparcia dla PHP 8
Wsparcie dla PHP 8 zakończy się pod koniec listopada 2022 roku, a łatki poprawki bezpieczeństwa będą dostarczane jeszcze przez kolejny rok. W efekcie PHP 8 zapewni twórcom spokój i komfort przez 3 lata od momentu wydania.
⚠️ Pamiętaj, że nowa wersja PHP 8 wprowadza zmiany, które mogą spowodować niepoprawne wyświetlenie strony internetowej lub działanie danej aplikacji – wynika to z faktu konieczności dostosowania samej aplikacji do nowej wersji języka PHP. Jeżeli odnotujesz jakiekolwiek problemy – przywróć poprzednią wersję PHP powyższą metodą.
Jak włączyć PHP 8 na hostingu home.pl?
Najnowsza wersja interpretera PHP jest dostępna dla użytkowników home.pl bez dodatkowych opłat. Aby skorzystać z PHP 8:
- zaloguj się do Panelu Klienta,
- przejdź do ustawień swojego hostingu,
- wybierz serwer, a następnie Ustawienia ➔ Preferencje serwera,
- przy pozycji Interpreter PHP z listy rozwijanej wybierz „8”.
Nowości w wersji PHP 8?
Najważniejszym elementem wprowadzonym w PHP 8 jest kompilator JIT (ang. Just In Time). Jego rolą w mocnym skrócie jest wykonywanie kodu w czasie rzeczywistym, jeszcze zanim trafi do interpretera PHP. Swoim działaniem przypomina nieco pamięć podręczną w przeglądarce – zamiast polegać cały czas na zasobach urządzenia/łącza/serwera, niektóre elementy są zachowywane w pamięci i podawane użytkownikowi szybciej.
JIT z pewnością wpłynie na większą wydajność samych aplikacji, natomiast nie stanie się to z dnia na dzień. Twórcy samych aplikacji muszą dostosować swoje rozwiązania do kompilatora, aby całość funkcjonowała poprawnie i zgodnie z założeniami.
Przykład wpływu JIT na obliczenia i interpretację kodu zamieścił jeden z developerów języka PHP. Różnice w wydajności względem PHP 7.x mogą sięgać nawet 300% na korzyść PHP 8.
PHP 8 przynosi ze sobą długą listą nowych funkcji, które poprawią pracę nad tworzeniem i kompilowaniem kodu PHP w aplikacjach. Do kluczowych zagadnień, związanych z wydaniem nowego PHP należą między innymi:
- Constructor property promotion – to jedna z ważniejszych zmian w kontekście budowania argumentów do właściwości elementu. Wpłynie ona przede wszystkim na czytelność kodu i jego łatwiejszą interpretację. Funkcja ta ułatwia i przyśpiesza pracę nad deklarowaniem parametrów.
- Korzystanie z unii (Union Types) – to kolejny krok w kierunku uproszczenia niektórych zasad języka PHP. W wersji 7.x korzystanie z unii było możliwe tylko w przypadku odpowiedniej konfiguracji tzw. adnotacji. Wersja 8 usprawnia ten mechanizm i daje programiście zdecydowanie więcej możliwości w optymalizacji danych wejściowych i wyjściowych.
- Argumenty Nazwane (tzw. Named Arguments) – skierowane do osób, które zmagały się do tej pory z optymalizacją kodu i obecności tzw. argumentów opcjonalnych. W poprzednich wersjach PHP wymagało to powielania standardowych (domyślnych) wartości, natomiast teraz twórca kodu może użyć nazwy argumentu.
- Nullsafe Operator – w języku PHP istnieje część składni nazwana Operatorem zerowym koalescencyjnym, którego zadaniem jest sprawdzanie wartości NULL. To rozwiązanie miało jedną wadę, a mianowicie wymagała od twórcy skonfigurowania konkretnych warunków, które sprawdzały obecność NULL w kodzie W PHP 8 zmieniono sposób weryfikacji i działania samego operatora, tak aby przy pierwszym błędzie łańcuch poleceń zwracał wartość NULL.
Powyższe funkcje są z perspektywy programisty PHP bardzo ważne, ale oprócz tego w nowym wydaniu dodano także:
- klasę Weak Map
- interfejs Stringable
- funkcję str_contains(), str_starts_with(), str_ends_with()
- funkcję fdiv()
- funkcję get_debug_type()
- funkcję get_resource_id()
- funkcję token_get_all()
Szczegóły dotyczące działania i więcej informacji na temat nowych funkcji znajdziesz na oficjalnej stronie twórców języka PHP.
źródło: home.pl