Nowy rok zaczynam tradycyjnym przeglądem trendów. 2025 był rokiem pipe operatora i konsolidacji Hyvä. 2026 zapowiada się jako rok PHP 8.5 w Magento, pierwszych RFC pod PHP 9.0 i dalszego dojrzewania AI tooling w codziennej pracy developera. Bez przepowiadania przyszłości – tylko to co aktualnie widać w projektach, społeczności i na listach mailingowych php-internals.
PHP 8.5 w Magento – kiedy realnie?
PHP 8.5 wyszło w listopadzie 2025. Oficjalne wsparcie w Magento 2 pojawi się w wersji 2.4.9 – spodziewanej w Q2 lub Q3 2026. Co to oznacza teraz:
# Aktualnie (styczeń 2026):
# - Magento 2.4.8 oficjalnie wspiera PHP 8.3 i 8.4
# - PHP 8.5 działa z Magento 2.4.8 w praktyce, ale bez oficjalnej gwarancji
# - Zewnętrzne moduły mogą jeszcze nie być gotowe
# Sprawdź gotowość modułów na PHP 8.5
composer require --dev phpcompatibility/php-compatibility
vendor/bin/phpcs \
--standard=PHPCompatibility \
--runtime-set testVersion 8.5 \
--extensions=php \
vendor/ 2>/dev/null | grep -E "ERROR" | wc -l
# Poczekaj z produkcją na Magento 2.4.9 – ale własny kod możesz pisać z PHP 8.5 już teraz
<?php
declare(strict_types=1);
// Własny kod modułu z PHP 8.5 features - bezpiecznie już teraz
// (pod warunkiem że Twoje moduły są izolowane od rdzenia)
// Pipe operator w serwisie importu produktów
class ProductImportPipeline
{
public function __construct(
private readonly SkuNormalizer $normalizer,
private readonly PriceValidator $validator,
private readonly ProductSaver $saver
) {}
public function process(array $rawRows): ImportResult
{
$valid = $rawRows
|> array_filter($$, fn($r) => !empty($r['sku']))
|> array_map(fn($r) => $this->normalizer->normalize($r), $$)
|> array_filter($$, fn($r) => $this->validator->isValid($r))
|> array_values($$)
;
$saved = array_map(fn($r) => $this->saver->save($r), $valid);
$errors = count($rawRows) - count($valid);
return new ImportResult(count($saved), $errors);
}
}
PHP 9.0 – pierwsze sygnały z internals
Prace nad PHP 9.0 oficjalnie zaczęły się pod koniec 2025. Kilka RFC jest już w fazie discussion:
<?php
// RFC: Usunięcie starych deprecacji z PHP 9.0
// 1. Dynamiczne właściwości usunięte (deprecated od 8.2, error od 9.0)
class Product
{
// PHP 8.x z #[AllowDynamicProperties]: $product->custom = 'val' -> OK
// PHP 9.0: Fatal Error bez atrybutu
}
// 2. Implicit nullable bez ? - TypeError od PHP 9.0
// function foo(string $x = null): void {} // Error w PHP 9.0
// Napraw teraz: function foo(?string $x = null): void {}
// 3. Część starych aliasów funkcji usunięta
// join() -> implode() (join() deprecated w 9.0 lub usunięte)
// sizeof() -> count()
// RFC w dyskusji (nie potwierdzone):
// - Native generics (wciąż brak konsensusu technicznego)
// - Pattern matching (match 2.0 z destrukturowaniem?)
// - First-class named arguments w więcej kontekstach
FrankenPHP – czy jest gotowy na Magento?
FrankenPHP 1.x jest stabilny dla nowych aplikacji PHP. Sytuacja z Magento 2 na początku 2026:
| Tryb FrankenPHP | Magento 2 – status | Kiedy warto |
|---|---|---|
| Traditional (jak PHP-FPM) | Działa – przetestowane | Drop-in zamiana PHP-FPM, łatwiejsza konfiguracja |
| Worker mode | Problematyczny – global state Magento | Nie zalecane bez głębokiej analizy |
| CLI (bin/magento) | Bezproblemowe | Szybszy bootstrap przy wielu komendach |
# FrankenPHP jako zamiana PHP-FPM w DDEV (eksperymentalnie) # .ddev/config.yaml # webserver_type: generic # Następnie własny docker-compose z FrankenPHP # docker-compose.frankenphp.yaml (fragment) # services: # web: # image: dunglas/frankenphp:php8.5-alpine # environment: # SERVER_NAME: ":80" # FRANKENPHP_CONFIG: | # worker /var/www/html/frankenphp-worker.php
AI tooling – co nowego na starcie 2026
W grudniu 2025 kilka nowych narzędzi weszło do mojego workflow lub mają potencjał:
- Claude 3.5/3.6 z dłuższym kontekstem – 200k tokenów pozwala wkleić cały moduł Magento i dostać sensowny review. Rok temu to nie działało przy większych modułach.
- Cursor IDE z Magento plugin – Cursor rozumie teraz lepiej Magento conventions przez własny context window nad projektem. Autocompletion di.xml jest zauważalnie lepsze.
- DeepSeek V3 lokalnie przez Ollama – nowy model który dorównuje GPT-4o przy frakcji wymagań sprzętowych. Na Mac M-series działa użytecznie bez throttlingu.
- GitHub Copilot Workspace – feature który pozwala opisać zadanie w języku naturalnym a Copilot proponuje plan zmian z plikami. Wciąż beta ale obiecujące.
Projekty które śledzę w 2026
- Magento 2.4.9 – PHP 8.5 wsparcie, prawdopodobnie więcej integracji z Adobe Commerce AI
- Hyvä React GA – oficjalna GA wersja Hyvä React (islands architecture z React w Hyvä)
- OpenSearch 3.x semantic search – vector search dla „podobnych produktów” bez zewnętrznych ML serwisów
- PHP Rector 2.0 – nowa wersja z lepszą obsługą PHP 8.5 i pierwszymi regułami PHP 9.0 migration
- DDEV 2.0 – przepisany core, lepsza wydajność na Apple Silicon
Podsumowanie
2026 to rok stabilizacji po intensywnym cyklu zmian PHP 8.x. Pipe operator, readonly hierarchie i property hooks są w produktywnym kodzie. AI tools przestały być eksperymentem i stały się częścią infrastruktury deweloperskiej jak IDE i linter. Magento 2.4.9 z PHP 8.5 będzie milowym kamieniem który otworzy nowe możliwości w platformie. Śledzę i opisuję.
