Hinweis: Der folgende Artikel hilft Ihnen dabei: Was ist neu in Laravel 10: Eine umfassende…
Laravel-Version | PHP-Versionsunterstützung | Veröffentlichungsdatum | Fehlerbehebungen bis | Sicherheitsfixes bis |
---|---|---|---|---|
8 | 7.3 – 8.1 | 8. September 2020 | 26. Juli 2022 | 24. Januar 2023 |
9 | 8,0 – 8,1 | 7. Februar 2023 | 8. August 2023 | 6. Februar 2024 |
10 | 8.1 | 7. Februar 2023 | 6. August 2024 | 4. Februar 2025 |
11 | 8.2 | 6. Februar 2024 | 5. August 2025 | 4. Februar 2025 |
Wie Sie vielleicht wissen, fügen wir in Laravel 10.x Typen zum User-Land-Code hinzu. Dies gilt auch für das gesamte Erstanbieter-Paket-Ökosystem, einschließlich Stubs und Starter-Kits.
Um einen Vorsprung zu haben, haben wir damit begonnen, einige dieser Änderungen in Paketen wie Breeze und Jetstream zu veröffentlichen. pic.twitter.com/mqkhL7udhb
— Taylor Otwell (@taylorotwell) 3. Januar 2023
Was ist neu in Laravel 10?
Laravel 10, ein großes Laravel-Versionsupdate, wird voraussichtlich am 7. Februar 2023 veröffentlicht. Dieses Update wird viele neue Änderungen mit sich bringen, und wir haben einige davon im Folgenden behandelt:
Verbesserte Routing-Geschwindigkeit und Zuverlässigkeit
Laravel 10 wird die Routing-Geschwindigkeit und -Zuverlässigkeit verbessern, da es die Routing-Komponente optimiert hat, um die Anzahl der Methodenaufrufe und Eigenschaftszugriffe zu minimieren, wodurch der Overhead reduziert und die Geschwindigkeit verbessert wird. Außerdem wurde in Laravel 10 die Handhabung verschachtelter Gruppenrouten verbessert, um die Komplexität zu reduzieren und die Zuverlässigkeit zu verbessern.
Die Implementierung des Routencaches wurde optimiert, um den Overhead zu reduzieren und die Leistung beim Generieren des Routencaches zu verbessern. Darüber hinaus wurde die automatische Erkennung von Namespace-Modellen geändert, um den Overhead zu minimieren und eine Leistungssteigerung beim Auflösen von Modellbindungen zu ermöglichen.
Diese Verbesserungen machen das Routing von Laravel 10 schneller und zuverlässiger und bieten den Endbenutzern Ihrer Anwendung ein besseres Erlebnis
Integrierte Aufgabenplanungsfunktionen in Konsolenbefehlen
Laravel 10 verfügt über verbesserte Aufgabenplanungsfunktionen in Konsolenbefehlen. Zu den Verbesserungen gehören:
- Verbesserte Syntax zum Definieren von Zeitplanaufgaben in Konsolenbefehlen und die Möglichkeit, Aufgabenzeitpläne in mehreren Befehlen zu verwenden.
- Verbesserte Unterstützung für die Planung von Aufgaben in benutzerdefinierten Intervallen.
- Verbesserte Aufgabenverwaltung mit der Möglichkeit, geplante Aufgaben aufzulisten, zu prüfen und zu löschen.
- Verbesserte Aufgabenausführung mit besserer Protokollierung und Fehlerbehandlung.
Diese Verbesserungen in Laravel 10 erleichtern sich wiederholende Planungsaufgaben in Ihrer Anwendung und stellen sicher, dass sie reibungslos ablaufen.
Tailwind CSS-basierte UI-Vorlagen von Laravel Jetstream
Der Laravel Jetstreams Die CSS-basierten UI-Vorlagen von Tailwind wurden verbessert, um eine modernere und optisch ansprechendere Benutzeroberfläche für Ihre Anwendung bereitzustellen. Zu den Verbesserungen gehören:
- Bessere Gestaltungs- und Layoutoptionen, passend zur Marke und zum Design Ihrer Anwendung.
- Die verbesserte Unterstützung für responsives Design sorgt dafür, dass Ihre Anwendung auf allen Geräten und Bildschirmgrößen gut aussieht.
- Erweiterte Navigationsoptionen, einschließlich der Möglichkeit, die obere Navigationsleiste anzupassen und benutzerdefinierte Seiten zu erstellen.
- Dank der verbesserten Internationalisierungsunterstützung können Sie Ihre Bewerbung problemlos in verschiedene Sprachen übersetzen.
Diese Verbesserungen erleichtern die Erstellung einer modernen, optisch ansprechenden Benutzeroberfläche für Ihre Laravel 10-Anwendung und tragen dazu bei, das Benutzererlebnis zu verbessern und Ihre Anwendung ansprechender und zugänglicher zu machen.
Laravel 10 Skeleton verwendet native Typen anstelle von Docblocks
Das Laravel 10-Skelett verwendet native PHP-Typen für Funktionsargumente und gibt Werte zurück, anstatt sich für Typhinweise auf PHPDoc-Blöcke zu verlassen. Dadurch wird der Code prägnanter und verständlicher und die Leistung wird verbessert, indem der erforderliche Analyseaufwand reduziert wird.
Die Verwendung nativer PHP-Typen erleichtert auch die Nutzung des neuen Typsystems, das in PHP 7.4 eingeführt wurde, das eine genauere Typprüfung und eine bessere Leistung bietet. Diese Änderung ist Teil der fortlaufenden Bemühungen von Laravel, seine Codebasis zu modernisieren und das Entwicklererlebnis zu verbessern.
Laravel 10 verwendet standardmäßig aufrufbare Validierungsregeln
Laravel 10 verfügt über aufrufbare Validierungsregeln, mit denen Sie Validierungslogik als einzelne, eigenständige Klasse definieren können. Dies erleichtert die Wiederverwendung der Validierungslogik über mehrere Formularanforderungen und Controller hinweg und trägt dazu bei, dass Ihr Code besser organisiert und wartbar bleibt.
Um aufrufbare Validierungsregeln zu verwenden, definieren Sie eine Klasse, die die Schnittstelle Illuminate\Contracts\Validation\Rule implementiert, und verwenden Sie dann den Klassennamen als Validierungsregel in Ihrer Formularanforderung oder Ihrem Controller. Laravel instanziiert die Klasse automatisch und führt die Validierungslogik aus, wodurch Ihr Code vereinfacht und seine Lesbarkeit verbessert wird.
Laravel 10 stellt die Unterstützung für PHP 8.0 ein
Ja das ist richtig. Laravel 10 hat die Unterstützung für PHP 8.0 eingestellt. Das bedeutet, dass Sie, wenn Sie Laravel 10 verwenden möchten, eine neuere Version von PHP verwenden müssen, beispielsweise PHP 8.1 oder höher.
Die Einstellung der Unterstützung für ältere PHP-Versionen ist in der Laravel-Community eine gängige Praxis, da das Framework dadurch von den neuesten Funktionen und Leistungsverbesserungen der neuesten PHP-Version profitieren kann. Dies trägt dazu bei, dass die Benutzer ein besseres und optimierteres Erlebnis erhalten.
Wenn Sie also derzeit die PHP 8.0-Version verwenden und Laravel 10 verwenden möchten, müssen Sie Ihre PHP-Installation auf eine neuere Version aktualisieren. Dies erfordert möglicherweise Aktualisierungen Ihres Codes oder von Paketen von Drittanbietern. Daher ist es wichtig, im Voraus zu planen und gründlich zu testen, bevor Sie Änderungen an Ihrer Produktionsumgebung vornehmen.
Abwertungen und Änderungen in Laravel 10
Zusätzlich zu den verbesserten Funktionen hat Laravel 10 auch einige veraltete Funktionen und Änderungen eingeführt. Zu den wichtigsten gehören:
„dispatchNow()“ wird durch „dispatchSync()“ ersetzt.
Laravel 10 hat das ersetzt „dispatchNow“-Methode mit „dispatchSync“.. Die Methode „dispatchSync“ funktioniert ähnlich wie „dispatchNow“, bietet jedoch mehr Kontrolle über den Jobausführungsprozess und eine bessere Leistung.
Hier ist ein Beispiel für die Verwendung der DispatchSync-Funktion in Laravel 10:
Dispatch(new SendEmailJob($data))->dispatchSync();
Die Methode „dispatchSync“ versendet einen Job sofort, umgeht das Warteschlangensystem und führt den Job synchron innerhalb des aktuellen Prozesses aus.
Der Hauptunterschied zwischen „dispatchSync“ und „dispatchNow“ besteht darin, dass „dispatchSync“ den Synchronisierungs-Connector anstelle des Standard-Warteschlangen-Connectors verwendet.
Sie können „dispatchNow“ weiterhin verwenden, indem Sie die Methode für eine Instanz des Jobs aufrufen, den Sie versenden möchten:
Dispatch(new SendEmailJob($data))->dispatchNow();
Einstellung der Benachrichtigungsfassade für meldepflichtige Modellereignisse
In Laravel 10 ist das Benachrichtigungstabelle und das Benachrichtigungsfassade wurden zugunsten der Verwendung veraltet Meldepflichtige Modellereignisse. Bei meldepflichtigen Modellereignissen werden Benachrichtigungen jetzt direkt vom Modell gesendet, anstatt in der Datenbank gespeichert und über die Benachrichtigungsfassade gesendet zu werden.
Hier ist ein Beispiel für die Verwendung von meldepflichtigen Modellereignissen in Laravel 10:
verwenden Sie Illuminate\Notifications\Notifiable; class User erweitert Model use Notifiable; öffentliche Funktion routeNotificationFor($driver) if ($driver === 'mail') return $this->email; $user = User::first(); $user->notify(new UserNotification());
Entfernen Sie die veraltete Route::home-Methode
Laravel 10 hat auch die Route::home-Methode veraltet. In früheren Laravel 10-Versionen definierte die Route::home-Methode eine Route, die auf die Homepage der Anwendung verweist.
Hier ist ein Beispiel, wie Sie eine Home-Route in Laravel 10 definieren können:
Route::get('/', function () return view('welcome'); );
Entfernen Sie das veraltete „asserTimesSent“.
Frühere Laravel-Versionen verwendeten die Methode „assertTimesSent“, um zu überprüfen, ob eine bestimmte Anzahl von Benachrichtigungen über das Laravel-Benachrichtigungssystem gesendet wurde. Laravel 10 empfiehlt jedoch, die Benachrichtigungen mit der Methode „assertSent“ zusammen mit der Methode „times“ zu testen.
Hier ist ein Beispiel dafür, wie Sie die AssertSent-Methode zum Testen von Benachrichtigungen in Laravel 10 verwenden können:
Benachrichtigung::abc(); Notification::send($users, new UserNotification()); Notification::assertSent(UserNotification::class, function ($notification, $channels) use ($users) return $notification->user->id === $users->first()->id; )- >times(count($users));
Verwenden Sie die native PHP 8.1-Funktion array_is_list
Die Funktion array_is_list bestimmt, ob ein Array eine Liste ist, die als Array mit aufeinanderfolgenden Ganzzahlschlüsseln beginnend bei 0 definiert ist. Diese Funktion kann in Verbindung mit anderen Array-Funktionen verwendet werden, um Array-Operationen zu vereinfachen.
Hier ist ein Beispiel dafür, wie Sie die Funktion array_is_list in Laravel 10 verwenden können:
$array = [1, 2, 3, 4]; if (array_is_list($array)) echo 'Dies ist eine Liste.'; else echo 'Dies ist keine Liste.';
Durch die Verwendung der neuesten Funktionen in PHP 8.1 bietet Laravel 10 Entwicklern eine modernere und effizientere Möglichkeit, mit Arrays in ihren Anwendungen zu arbeiten.
Wie bereite ich mich auf Laravel 10 vor?
Vor dem Update auf Laravel 10 ist es wichtig, die Versionshinweise und alle Änderungen zu lesen, die sich auf Ihre Anwendung auswirken könnten. Auf diese Weise können Sie besser verstehen, was sich in der neuesten Laravel-Version geändert hat, und alle notwendigen Aktualisierungen Ihres Codes planen. Führen Sie die folgenden Aufgaben aus:
Überprüfen Sie die PHP-Versionsanforderung: Laravel 10 erfordert PHP 8.1 oder eine neuere Version, daher müssen Sie sicherstellen, dass Sie die richtige PHP-Version verwenden, bevor Sie auf Laravel 10 aktualisieren.
Sichern Sie Ihre Bewerbung: Bevor Sie größere Änderungen an Ihrer Anwendung vornehmen, sollten Sie Ihren Code und Ihre Datenbank sichern. Dies gibt Ihnen ein Sicherheitsnetz, falls während des Upgrade-Vorgangs etwas schief geht.
Kompatibilität mit Laravel 10: Stellen Sie sicher, dass Ihre Abhängigkeiten, z. B. Pakete von Drittanbietern, mit Laravel 10 kompatibel sind. Möglicherweise müssen Sie einige Ihrer Abhängigkeiten aktualisieren oder ersetzen, um sicherzustellen, dass Ihre Anwendung weiterhin wie erwartet funktioniert.
Verschwenden Sie keine Zeit mehr auf Servern
DreamHost übernimmt die Serververwaltung für Sie, sodass Sie sich auf die Erstellung großartiger Apps und die Zufriedenheit Ihrer Kunden konzentrieren können.
So tragen Sie zu Laravel 10 bei
Laravel ermutigt seine Benutzer, zu seinem Framework und dem Entwicklungsprozess beizutragen. Bevor Sie jedoch Beiträge leisten, ist es wichtig, ein gutes Verständnis des Laravel-Frameworks und seiner Funktionsweise zu haben.
Erstellen Sie einen Fork des Laravel-Repositorys auf GitHub und klonen Sie ihn auf Ihren lokalen Computer. Auf diese Weise können Sie Änderungen am Code vornehmen, diese zur Überprüfung an das Haupt-Repository zurücksenden und Änderungen am Code vornehmen.
Befolgen Sie unbedingt die Laravel-Codierungsstandards und Beitragsrichtlinien und testen Sie Ihre Änderungen, um sicherzustellen, dass sie wie erwartet funktionieren und keine vorhandenen Funktionen beeinträchtigen.
Senden Sie eine Pull-Anfrage zum Laravel-Framework-Repository und bitten Sie die Entwickler, die Plattform zu überprüfen und Änderungen daran vorzunehmen.
Zusammenfassung
Beachten Sie, dass Laravel 10 noch nicht offiziell veröffentlicht wurde. Sobald Laravel 10 veröffentlicht und auf der DreamHost-Plattform verfügbar gemacht wird, können Sie Ihre Anwendung auf Laravel 10 aktualisieren.
Mit 8 % des Marktanteils, Laravel ist eine kluge Wahl für Ihr PHP-Framework. Wir haben einige der Kernfunktionen behandelt, die in der kommenden Version erwartet werden. Allerdings würden wir Laravel 10 erst am Veröffentlichungsdatum, also am 7. Februar 2023, in seiner ganzen Pracht erleben.