Laravel 14 soll im ersten Quartal 2027 erscheinen. Voraussetzung wird PHP 8.4 oder neuer sein. Fehlerkorrekturen sind bis zum dritten Quartal 2028 geplant, Sicherheitsupdates bis zum ersten Quartal 2029. Am 21. September 2026 lagen weder ein offizieller Termin noch eine bestätigte Feature-Liste vor. Die folgenden Punkte stammen aus dem Master-Zweig von laravel/framework und können sich noch ändern.
<?php
Route::query('/search', function () {
return request()->input('filter');
});Das Routing erhält Route::query() für die HTTP-Methode QUERY. Diese sichere Methode kann einen Request-Body übertragen. Route::any() wird QUERY einschließen, und die CSRF-Middleware wird QUERY wie GET, HEAD und OPTIONS als Leseanfrage behandeln. Vazha Aptsiauri steuerte die Änderung in PR #60655 bei. Laravel 13.19 brachte bereits Http::query() sowie die Testhelfer query() und queryJson().
PR #59708 von Will Rowe ergänzt authorize() im Authorizable-Contract und im Trait. Ein Benutzer kann damit $user->authorize('viewAny', Post::class) aufrufen. Die Methode arbeitet wie $user->can(), löst bei einer fehlgeschlagenen Prüfung aber eine AuthorizationException aus.
Caleb White ergänzt mit PR #60767 ein optionales Kontext-Array für den Helfer report() und für report() im Exception Handler. Beim Melden eines Fehlers können damit Werte wie order_id übergeben werden. Der ExceptionHandler-Contract verwendet nun report(Throwable $e, array $context = []). Eigene Handler mit einer überschriebenen Methode müssen den neuen Parameter übernehmen.
PR #61378 fügt Storage::fake('ondemand') für On-Demand-Disks hinzu. Der Fake fängt Aufrufe von Storage::build() ab und erlaubt dieselben Assertions wie bei benannten Disks. Die Änderung ging in den Laravel-14-Zweig, weil eine Anwendung bereits eine Disk namens ondemand besitzen kann.
PR #61395 fasst whereKey() und whereKeyNot() zusammen und ergänzt orWhereKey() sowie orWhereKeyNot(). PR #61496 erlaubt allen vier Methoden die Übergabe einer Subquery.
Mehrere Verhaltensänderungen sollten vor einem Upgrade geprüft werden. Queue::pause(), Queue::pauseFor(), resume() und isPaused() erwarten künftig zuerst den Namen der Queue. Die Verbindung folgt optional als zweites Argument und fällt standardmäßig auf die konfigurierte Verbindung zurück. Laravel 13.25 führte das Pausieren aller Queues ein. PR #61076 ändert die Signaturen für einzelne Queues von Queue::pause('redis', 'emails') zu Queue::pause('emails') oder Queue::pause('emails', 'redis').
lazy() und chunk() verändern den Query Builder beim Seitennavigieren künftig nicht mehr. PR #61411 und PR #61428 beheben ein Laravel-13-Verhalten, bei dem eine spätere Wiederverwendung des Builders nach lazy() zu count() mit dem Ergebnis 0 führen konnte. Laravel 14 liefert danach wieder die vollständige Zeilenanzahl.
PR #61577 ändert Builder::findOr() für Arrays mit IDs. Bei User::findOr([1, 99], fn () => 'fallback') gab Laravel 13 eine Collection mit User 1 zurück und übersprang den Callback. Laravel 14 ruft den Callback bei einer fehlenden ID auf. Das entspricht findOrFail() und den Varianten für Beziehungen.
PR #61466 korrigiert die Array-Verarbeitung in Cache::has() und Cache::forget(). Obwohl die Docblocks seit vier Jahren Arrays vorsehen, lieferte has(['a', 'b']) bisher true, ohne alle Schlüssel zu prüfen. forget() entfernte die Schlüssel ebenfalls nicht. In Laravel 14 ist has() nur dann true, wenn jeder Schlüssel existiert. forget() entfernt alle angegebenen Schlüssel und liefert nur dann true, wenn alle Löschvorgänge erfolgreich waren. Der bisherige Redis-Pfad konnte eine Warnung mit dem Text Array to string conversion ausgeben.
PR #61425 bringt MassPrunable und Prunable beim Umgang mit Soft Deletes auf denselben Stand. Bei einem Modell mit MassPrunable und SoftDeletes berücksichtigt model:prune künftig auch bereits gelöschte Datensätze und entfernt alle passenden Zeilen endgültig. Wer das Verhalten von Laravel 13 behalten will, muss withoutTrashed() in prunable() ergänzen.
PR #59104 hebt die Mindestversion von Laravel 13 mit PHP 8.3 auf PHP 8.4 an. Der Grund ist Symfony 8, das PHP 8.4 voraussetzt. Weitere geplante Abhängigkeitsänderungen sind eine ably/ably-php-Version mit Ably protocol 2.0 aus PR #60860, orchestra/testbench-core mit ^12.0 sowie Unterstützung für PHPUnit 11.5, 12.5 und 13.
Laravel veröffentlicht große Versionen jährlich ungefähr im ersten Quartal. Laravel 11 unterstützt PHP 8.2 bis 8.4, erschien am 12. März 2024, erhielt Fehlerkorrekturen bis zum 3. September 2025 und Sicherheitsupdates bis zum 12. März 2026. Laravel 12 unterstützt PHP 8.2 bis 8.5, erschien am 24. Februar 2025, verlor den Fehlerkorrektur-Support am 13. August 2026 und erhält Sicherheitsupdates bis zum 24. Februar 2027.
Laravel 13 unterstützt PHP 8.3 bis 8.5 und erschien am 17. März 2026. Fehlerkorrekturen sind bis zum dritten Quartal 2027 vorgesehen, Sicherheitsupdates bis zum 17. März 2028. Für Laravel 14 gelten PHP 8.4+, ein Zieltermin im ersten Quartal 2027, Fehlerkorrekturen bis zum dritten Quartal 2028 und Sicherheitsupdates bis zum ersten Quartal 2029. Die offizielle Dokumentation führt Laravel 14 noch nicht.
Laravel Shift kann das spätere Upgrade automatisieren. Das Tool erstellt dafür einen Pull Request mit einzeln prüfbaren Commits.




Kommentare
Noch keine Kommentare — schreib den ersten.
Starte die Diskussion
Kein Konto, kein Passwort nötig — gib einfach deine E-Mail-Adresse ein, wir senden dir einen einmaligen Anmelde-Link. Beim ersten Mal bist du damit automatisch angemeldet.
Deine Bewertung wird nach der Anmeldung automatisch übernommen.
Schau in dein Postfach
Wir haben einen Anmelde-Link an … gesendet. Öffne ihn auf diesem Gerät — dieser Tab meldet dich automatisch an.
Nichts angekommen? Wirf einen Blick in den Spam-Ordner — und markiere die Mail dort als „Kein Spam“, dann landet sie künftig direkt im Postfach.