Mamy to! PHP 8.5 właśnie wylądowało na wszystkich serwerach IQHost. Od teraz możesz wybrać najnowszą wersję PHP bezpośrednio w panelu DirectAdmin.
20 listopada 2025 roku oficjalnie wyszło PHP 8.5, a my dodaliśmy je do naszej infrastruktury. I to nie jest kolejna "nudna" aktualizacja z poprawkami bezpieczeństwa - tym razem dostaliśmy pipe operator, który programiści funkcyjni czekali latami, oraz kilka zmian które realnie upraszczają codzienne kodowanie.
Jeśli zastanawiasz się czy warto przesiadać na PHP 8.5 - ten artykuł jest dla Ciebie.
TL;DR dla niecierpliwych
Główne nowości PHP 8.5:
- Pipe operator (
|>) - łańcuchowanie funkcji bez zagnieżdżenia - Clone with - klonowanie obiektów z modyfikacją właściwości
- Nowe klasy URI - nowoczesne parsowanie URL-i
array_first()iarray_last()- wreszcie bez kombinowania- Atrybuty na stałych - więcej możliwości metaprogramowania
- Wsparcie do końca 2029 - długi cykl życia
Jeśli prowadzisz stronę WordPress - spokojnie, WP 6.9 jest w pełni kompatybilny z PHP 8.5.
Pipe operator - koniec z zagnieżdżaniem funkcji
To największa nowość PHP 8.5. Jeśli kiedykolwiek pisałeś coś takiego:
// Stary sposób - czytanie od środka
$result = array_sum(
array_filter(
array_map(
fn($x) => $x * 2,
$numbers
),
fn($x) => $x > 10
)
);
...to wiesz jak trudno to czytać. Pipe operator pozwala zapisać to naturalnie, od lewej do prawej:
// PHP 8.5 - pipe operator
$result = $numbers
|> fn($arr) => array_map(fn($x) => $x * 2, $arr)
|> fn($arr) => array_filter($arr, fn($x) => $x > 10)
|> array_sum(...);
Praktyczny przykład z aplikacji:
// Policz administratorów w systemie
$numberOfAdmins = $userRepository->fetchUsers()
|> fn(array $list) => array_filter($list, fn(User $user) => $user->isAdmin())
|> count(...);
Kod czyta się jak zdanie: "pobierz użytkowników, przefiltruj administratorów, policz". Żadnego zagnieżdżenia, żadnego zastanawiania się "gdzie to się kończy".
Clone with - klonowanie obiektów bez bólu
Readonly properties w PHP 8.1 były świetne, ale klonowanie takich obiektów z modyfikacją? Koszmar. Trzeba było robić obejścia przez refleksję albo tworzyć metody withX() dla każdej właściwości.
PHP 8.5 rozwiązuje to elegancko:
// Stary sposób - trzeba było kombinować
$newUser = clone $user;
// ... ale jak zmienić readonly właściwość? Nie da się prosto
// PHP 8.5 - clone with
$newUser = clone($user, ['email' => 'nowy@email.pl']);
Jeden wiersz zamiast dziesiątek. clone() przyjmuje teraz opcjonalny array z właściwościami do nadpisania.
Nowe klasy URI - parsowanie URL-i jak w 2025
Dotychczasowe parse_url() ma swoje lata i ograniczenia. PHP 8.5 wprowadza dwie nowe klasy:
// RFC 3986 (standard URI)
$uri = Uri\Rfc3986\Uri::parse('https://example.com/path?query=1');
// WHATWG (standard przeglądarek)
$url = Uri\WhatWg\Url::parse('https://example.com/path?query=1');
Co zyskujesz:
- Obiektowy dostęp do komponentów URL
- Rozwiązywanie relatywnych URL-i (nareszcie!)
- Porównywanie URL-i z uwzględnieniem normalizacji
- Zgodność ze standardami - RFC 3986 i WHATWG
Idealne dla API, crawlerów, i wszędzie gdzie pracujesz z URL-ami.
array_first() i array_last() - proste rzeczy wreszcie proste
Ile razy pisałeś to?
// Stary sposób - dwie funkcje dla jednej wartości
$first = $array[array_key_first($array)];
$last = $array[array_key_last($array)];
PHP 8.5:
// Nowy sposób - jedna funkcja
$first = array_first($array);
$last = array_last($array);
Mała zmiana, ale ile razy jej używasz dziennie?
Pobieranie handlerów błędów
Kolejne drobne usprawnienie. Do tej pory, żeby sprawdzić aktualny handler błędów, trzeba było:
// Stary sposób - ustawiasz żeby pobrać, potem przywracasz
$handler = set_error_handler(fn() => false);
restore_error_handler();
PHP 8.5:
// Nowy sposób - po prostu pobierz
$handler = get_error_handler();
$exceptionHandler = get_exception_handler();
Czytelniej i bez efektów ubocznych.
Atrybuty na stałych klasowych
PHP 8.0 wprowadził atrybuty, ale nie można ich było używać na stałych. PHP 8.5 to zmienia:
class Status {
#[Description('Użytkownik aktywny')]
public const ACTIVE = 1;
#[Description('Użytkownik zawieszony')]
#[Deprecated('Użyj INACTIVE')]
public const SUSPENDED = 2;
#[Description('Użytkownik nieaktywny')]
public const INACTIVE = 3;
}
Przydatne dla dokumentacji, generatorów kodu, i narzędzi do refleksji.
Co z WordPress?
Dobre wiadomości: WordPress 6.9 jest w pełni kompatybilny z PHP 8.5. Core team naprawił wszystkie znalezione problemy przed premierą.
Jeśli używasz popularnych wtyczek (WooCommerce, Yoast, Elementor) - większość już działa. Zawsze jednak warto:
- Przetestować na stagingu przed zmianą na produkcji
- Sprawdzić logi błędów po przełączeniu
- Upewnić się że wtyczki są aktualne
W DirectAdmin zmiana wersji PHP to kwestia kilku kliknięć w sekcji "Domain Setup".
Deprecje - co zniknie w przyszłości
PHP 8.5 oznacza jako deprecated kilka rzeczy:
- Niektóre funkcje cleanup dla zasobów - przygotowanie do pełnego przejścia na obiekty
- Stare stałe PDO - na rzecz nowszych odpowiedników
- Niektóre dyrektywy INI - porządkowanie konfiguracji
Jeśli zobaczysz deprecation warnings po przełączeniu na PHP 8.5 - nie panikuj. To tylko ostrzeżenia że coś zniknie w PHP 9.0. Masz czas na poprawki.
Wydajność i zmiany wewnętrzne
- OpCache teraz obowiązkowy w binarce PHP - zawsze włączony, zero konfiguracji
- Drobne optymalizacje w silniku Zend
- Lepsze typowanie wewnętrzne - mniej edge case'ów
W praktyce: nie spodziewaj się cudów wydajnościowych. PHP 8.4 był już szybki, 8.5 to głównie nowe funkcje, nie rewolucja w performance.
Jak przełączyć się na PHP 8.5 w IQHost?
- Zaloguj się do DirectAdmin
- Przejdź do Domain Setup → wybierz domenę
- W sekcji PHP Version Selector wybierz 8.5
- Zapisz zmiany
Gotowe. Zmiana działa natychmiast.
Wskazówka: Przed zmianą na produkcji, przetestuj stronę na subdomain lub środowisku deweloperskim.
Podsumowanie
PHP 8.5 to solidna aktualizacja. Nie przewraca wszystkiego do góry nogami, ale wprowadza funkcje których brakowało:
- Pipe operator - czystszy kod funkcyjny
- Clone with - łatwiejsze klonowanie obiektów readonly
- Nowe funkcje tablicowe - mniej boilerplate'u
- Nowoczesne parsowanie URI - zgodne ze standardami
Wsparcie do końca 2029 oznacza że możesz spokojnie używać PHP 8.5 przez najbliższe lata.
W IQHost obsługujemy PHP od wersji 5.3 do 8.5 - wybierasz to co potrzebujesz. Ale jeśli startujesz nowy projekt? PHP 8.5 to dobry wybór.
FAQ
Czy muszę przepisywać kod pod PHP 8.5? Nie. PHP 8.5 jest wstecznie kompatybilne. Twój obecny kod będzie działać. Nowe funkcje (jak pipe operator) to dodatki, nie wymagania.
Czy WordPress działa na PHP 8.5? Tak. WordPress 6.9 jest w pełni kompatybilny. Sprawdź tylko czy Twoje wtyczki i motyw też są aktualne.
Kiedy powinienem przejść na PHP 8.5? Jeśli wszystko działa na PHP 8.4 - nie ma pośpiechu. Ale przy nowych projektach warto od razu zacząć z 8.5 dla dostępu do nowych funkcji.
Czy PHP 8.5 jest szybsze? Marginalnie. Główne przyspieszenia były w PHP 8.0-8.1. PHP 8.5 skupia się na nowych funkcjach, nie optymalizacji.
Jak długo PHP 8.5 będzie wspierane? Aktywne wsparcie do końca 2027, security fixes do końca 2029.
Co z PHP 8.6? Planowane na listopad 2026. Ma przynieść partial function application - uzupełnienie pipe operatora.
Chcesz przetestować PHP 8.5?
Sprawdź nasze pakiety hostingowe - wszystkie obsługują PHP 8.5 w standardzie.
LiteSpeed, NVMe SSD, darmowy SSL, support 24/7. Hosting pod WordPress i nie tylko.
Czy ten artykuł był pomocny?
Twoja strona WordPress działa wolno?
Sprawdź nasz hosting WordPress z ultraszybkimi dyskami NVMe i konfiguracją serwera zoptymalizowaną pod kątem wydajności. Doświadcz różnicy już dziś!
Sprawdź ofertę hostingu