Was ist neu in PHP 8.5: Ein umfassender Überblick

· Oskar Stark · 2 Minuten zum Lesen
PHP 8.5

PHP 8.5 wird im November 2025 veröffentlicht und bringt mehrere nützliche neue Features und Verbesserungen mit sich. Diese Version konzentriert sich auf die Verbesserung der Developer Experience, neue Utility-Funktionen und bessere Debugging-Möglichkeiten.

Die wichtigsten neuen Features im Überblick

1. Neue Array-Funktionen: array_first() und array_last()

PHP 8.5 fügt zwei lang erwartete Funktionen hinzu, um den ersten und letzten Wert eines Arrays abzurufen. Sie ergänzen die bereits existierenden array_key_first() und array_key_last() Funktionen aus PHP 7.3.

$users = ['Alice', 'Bob', 'Charlie'];

$firstUser = array_first($users);  // 'Alice'
$lastUser = array_last($users);    // 'Charlie'

// Funktioniert auch mit assoziativen Arrays
$data = ['name' => 'John', 'age' => 30, 'city' => 'Berlin'];
echo array_first($data); // 'John'
echo array_last($data);  // 'Berlin'

// Gibt null für leere Arrays zurück
$empty = [];
var_dump(array_first($empty)); // null
var_dump(array_last($empty));  // null

Diese Funktionen entsprechen:

  • array_first($array)$array[array_key_first($array)]

  • array_last($array)$array[array_key_last($array)]

Mehr Details: PHP.Watch - array_first() und array_last()

2. Pipe Operator (|>)

PHP 8.5 führt einen neuen Pipe Operator (|>) ein, der es ermöglicht, mehrere Callables von links nach rechts zu verketten und dabei den Rückgabewert des linken Callables an das rechte weiterzugeben:

$result = 'Hello World'
    |> strtoupper(...)
    |> str_shuffle(...)
    |> trim(...);
// Ausgabe: 'LWHO LDLROE' (oder ähnliches gemischtes Ergebnis)

// Entspricht verschachtelten Aufrufen:
$result = trim(str_shuffle(strtoupper('Hello World')));

// Oder mit Variablen:
$result = 'Hello World';
$result = strtoupper($result);
$result = str_shuffle($result);
$result = trim($result);

Der Pipe Operator funktioniert mit allen Callables - Funktionen, Methoden, Closures und First-Class Callables. Er hat jedoch einige Einschränkungen:

  • Alle Callables müssen nur einen erforderlichen Parameter akzeptieren

  • Funktionen mit By-Reference-Parametern können nicht verwendet werden (mit wenigen Ausnahmen)

  • Der Rückgabewert wird immer als erster Parameter übergeben

Mehr Details: PHP.Watch - Pipe Operator

3. Neue Error- und Exception-Handler Getter

PHP 8.5 führt zwei neue Funktionen ein, die es ermöglichen, die aktuell aktiven Error- und Exception-Handler abzurufen: get_error_handler() und get_exception_handler().

Dies ist besonders nützlich für:

  • Framework-Entwicklung und Handler-Verkettung

  • Debugging von Error-Handling-Konfigurationen

  • Temporäres Überschreiben von Handlern unter Beibehaltung der ursprünglichen

Beide Funktionen geben das aktuelle Handler-Callable zurück oder null, wenn kein benutzerdefinierter Handler gesetzt ist.

Mehr Details: PHP.Watch - get_error_handler() und get_exception_handler()

4. Neue cURL-Funktion: curl_multi_get_handles()

Die cURL-Extension erhält eine neue Funktion zum Abrufen aller Handles von einem Multi-Handle:

$multiHandle = curl_multi_init();

$ch1 = curl_init('https://api.example.com/users');
$ch2 = curl_init('https://api.example.com/posts');

curl_multi_add_handle($multiHandle, $ch1);
curl_multi_add_handle($multiHandle, $ch2);

// Neu in PHP 8.5: Alle Handles abrufen
$handles = curl_multi_get_handles($multiHandle);
// Gibt zurück: [$ch1, $ch2]

// Ausführen und Ergebnisse verarbeiten
$running = null;
do {
    curl_multi_exec($multiHandle, $running);
} while ($running > 0);

foreach ($handles as $handle) {
    $response = curl_multi_getcontent($handle);
    curl_multi_remove_handle($multiHandle, $handle);
}

Mehr Details: PHP.Watch - curl_multi_get_handles()

5. Neue Locale-Funktion: locale_is_right_to_left()

PHP 8.5 fügt Unterstützung für die Erkennung von Right-to-Left (RTL) Locales hinzu und verbessert damit die Internationalisierungskapazitäten:

// Prüfen, ob Locale RTL-Schrift verwendet
$isRTL = locale_is_right_to_left('ar_SA'); // true (Arabisch)
$isLTR = locale_is_right_to_left('en_US'); // false (Englisch)
$isFarsi = locale_is_right_to_left('fa_IR'); // true (Persisch/Farsi)

// Objektorientierter Ansatz
$isRTL = Locale::isRightToLeft('he_IL'); // true (Hebräisch)

Dies ist besonders nützlich für:

  • Entwicklung mehrsprachiger Webanwendungen

  • Korrekte Textausrichtung in Benutzeroberflächen

  • Dynamische CSS-Klassen-Zuweisung basierend auf Locale

Mehr Details: PHP.Watch - locale_is_right_to_left()

6. Neue PHP_BUILD_DATE Konstante

Eine neue Konstante stellt das Build-Datum der PHP-Binary zur Verfügung, nützlich für Debugging und Versions-Auditing:

echo PHP_BUILD_DATE; // z.B., 'Nov 15 2025 10:30:45'

// Nützlich für Debugging in der Produktion
echo 'PHP Version: ' . PHP_VERSION . "\n";
echo 'Build Date: ' . PHP_BUILD_DATE . "\n";

Mehr Details: PHP.Watch - PHP_BUILD_DATE

7. CLI-Verbesserung: php --ini=diff

Eine neue CLI-Option zur Ausgabe nur der nicht-standardmäßigen INI-Direktiven:

# Zeige nur geänderte Einstellungen
php --ini=diff

# Beispiel-Ausgabe:
# memory_limit = 256M (default: 128M)
# max_execution_time = 60 (default: 30)

Mehr Details: PHP.Watch - CLI --ini=diff

Warum auf PHP 8.5 upgraden?

Verbesserte Developer Experience: Die neuen Array-Funktionen eliminieren häufigen Boilerplate-Code und machen Absichten klarer.

Besseres Debugging: Die neuen Handler-Getter bieten bessere Einblicke in das Anwendungsverhalten.

Verbesserte Tools: Die neue CLI-Option und Build-Date-Konstante helfen beim Debugging und Deployment-Tracking.

Zukunftssicherheit: Bleibe auf dem neuesten Stand mit den aktuellsten PHP-Features und Sicherheitsupdates.

Fazit

PHP 8.5 mag keine bahnbrechenden Sprachänderungen einführen, aber es liefert praktische Verbesserungen, die tägliche Entwicklungsworkflows verbessern. Die neuen Array-Funktionen adressieren lang bestehende Entwicklerwünsche, während der Pipe Operator eine sauberere Art bietet, Funktionsaufrufe zu verketten.

Das Upgrade von PHP 8.4 auf 8.5 sollte für die meisten Anwendungen unkompliziert sein, wobei die neuen Features sofortigen Nutzen bieten, ohne bestehenden Code zu brechen.

Upgrade-Empfehlung: Wenn du bereits PHP 8.4 verwendest, ist ein Upgrade auf PHP 8.5 empfehlenswert. Die neuen Features verbessern Code-Qualität und Debugging-Fähigkeiten mit minimalem Migrationsaufwand.

Bereit für das Upgrade auf PHP 8.5?

Unser Team ist spezialisiert auf Symfony und PHP-Entwicklung und hilft Unternehmen bei der reibungslosen Migration und optimalen Nutzung der neuesten Features. Kontaktiere uns, um deine PHP 8.5 Migrationsstrategie zu besprechen.

Das könnte dich auch interessieren

PHP 8.5 URI extension
Oskar Stark

PHP 8.5's neue URI-Erweiterung: Ein Game-Changer für URL-Parsing

PHP 8.5 führt eine leistungsstarke neue URI-Erweiterung ein, die die URL-Verarbeitung modernisiert. Mit Unterstützung für RFC 3986 und WHATWG-Standards bietet die neue Uri-Klasse unveränderliche Objekte, fluent Interfaces und korrekte Validierung - und behebt alle Einschränkungen der veralteten parse_url()-Funktion. Dieser Leitfaden zeigt praktische Vorher/Nachher-Beispiele und erklärt, wann welcher Standard zu verwenden ist.

Mehr erfahren
3 dog heads
Mathieu Santostefano

Lass die Nutzer des SDK ihren eigenen HTTP-Client nutzen

Befreie dich von starren Abhängigkeiten in deinen PHP-SDKs. Erfahre, wie du die Standards PSR-7, PSR-17 und PSR-18 zusammen mit PHP-HTTP/Discovery nutzt, um deinen Benutzern die Verwendung ihres bevorzugten HTTP-Clients zu ermöglichen – sei es Guzzle, Symfony HttpClient oder ein anderes Tool. Ein Muss für PHP- und Symfony-Entwickler.

Mehr erfahren
the surface of the earth seen from the space with city lights forming networks
Imen Ezzine

HTTP-Verben: Der ultimative Leitfaden

Hier erklären wir dir die Grundlagen von GET, POST, PUT, DELETE und mehr. In diesem Artikel erfährst du alles über die Funktionsweise, die Anwendungsmöglichkeiten und die Sicherheitsauswirkungen.

Mehr erfahren
2025 a year of celebrations for PHP with windows about API Platform, PHP, AFUP and Symfony
Jules Daunay

2025: Das Jahr der Jubiläen für PHP, AFUP, Symfony und API Platform

2025 wird ein großes Jubiläumsjahr. Wir feiern 20 Jahre Symfony, 30 Jahre PHP, 25 Jahre AFUP und 10 Jahre API Platform. Für SensioLabs ist dies ein wichtiger Meilenstein, der die Langlebigkeit der Technologien in unserem Ökosystem beweist. Wir sind stolz darauf, diese Jubiläen das ganze Jahr über mit der Community zu feiern.

Mehr erfahren
Blue ElePHPant on a computer
Imen Ezzine

Optimieren von PHP-Code: 8 Funktionen, die man für die effiziente Manipulation von Tabellen kennen sollte

Um ein hervorragender PHP-Entwickler zu werden, muss man den Umgang mit Tabellen perfekt beherrschen. Diese Strukturen sind in PHP unverzichtbar, sei es, um Daten zwischenzuspeichern, zu organisieren oder zu bearbeiten, bevor sie in einer Datenbank gespeichert werden. Wenn du ihre Funktionsweise beherrschst, wirst du in der Lage sein, deine Informationen effizienter und optimierter zu verwalten und zu manipulieren.

Mehr erfahren
Image of a desk with a laptop and monitor
Oskar Stark

Einführung in PIE: Der moderne PHP Extension Installer

Entdecken Sie PIE, den neuen PHP Installer für Extensions, der die Verwaltung von PHP-Erweiterungen mit einem modernen, Composer-ähnlichen Workflow vereinfacht. Verabschieden Sie sich von PECL-Komplexitäten und optimieren Sie Ihren Entwicklungsprozess mit PIE.

Mehr erfahren
SymfonyLive 2024
Jules Daunay

SymfonyLive Paris 2024: Zwei Tage Konferenz und Spaß

Am 28. und 29. März versammelten sich das SensioLabs-Team und die französischsprachige Symfony-Community an der Cité Internationale Universitaire in Paris zur SymfonyLive Paris 2024.

Mehr erfahren
Some speaker
Jules Daunay

Entdecken Sie unsere Symfony-Veranstaltungen im Februar 2024

Der Februar war ein geschäftiger Monat für SensioLabs in Bezug auf Symfony-Veranstaltungen. Wir nahmen an Symfony-Meetups und Konferenzen in Frankreich, der Schweiz, England und schließlich Kanada teil.

Mehr erfahren
Image