Laravel ist das beliebteste PHP-Framework mit mehr als 1,2 Millionen darauf aufgebauten Websites. Seit seiner Veröffentlichung im Juni 2011 hat Laravel die Aufmerksamkeit vieler Webentwickler auf sich gezogen und präsentiert sich als das am häufigsten verwendete PHP-Framework.
Laravel bietet eine schnelle Entwicklungsumgebung, Sicherheit und gute Entwicklerhandbücher. Laravel wurde von seinem Erfinder Taylor Otwell entwickelt und gewartet und hat seine Software weiter verbessert. Es folgt einem semantischen Versionsschema und befindet sich derzeit in Version 8.x.
Hier sind acht neue Funktionen, auf die Sie in Laravel 8 achten sollten.
1. Laravel Jetstream
Dies ist die neue Anwendungsgerüstfunktion in Laravel. Es verfügt über sofort einsatzbereite Funktionen wie Sitzungsverfolgung, Anmeldung, Registrierung, E-Mail-Überprüfung, Zwei-Faktor-Authentifizierung und optionale Teamverwaltung.
Jetstream bietet die Wahl zwischen zwei Gerüstoptionen: Livewire und Inertia.
Livewire ist eine reaktionsschnelle und dynamische Bibliothek, die die Möglichkeit bietet, die Verwendung von a zu vermeiden
JavaScript-Framework wie Vue.js. Es wird die Standard-Blade-Vorlagensprache verwendet. Livewire bietet auch die Flexibilität, zwischen dem Verlassen von Blade oder der Verwendung von Vue.js zu wählen.Inertia verwendet Vue.js als Vorlagensprache.
Weiterlesen: Was ist Vue.js?
Es bietet die volle Leistung von Vue.js, ohne dass clientseitiges Routing erforderlich ist. Wenn Vue Ihre bevorzugte Vorlagensprache ist, ist der Trägheitsstapel eine gute Wahl.
2. Migration Squashing
Während Sie Ihre Anwendung entwickeln, können sich Ihre Migrationen aufbauen. Sie können sie in eine einzelne SQL-Datei "quetschen", um das Klappern zu vermeiden. Diese Option ist für MySQL- oder PostgreSQL-Benutzer verfügbar.
Laravel erstellt beim Befehl eine Schemadatei Schema: dump ausgeführt wird. Wenn Sie versuchen, Ihre Datenbank zu migrieren, migriert Laravel zuerst die Ihrem Schema zugeordnete SQL-Datei. Wenn danach Migrationen vorhanden sind, die nicht Teil des Schemas waren, werden sie ausgeführt.
3. Rückenwind CSS
Laravel verwendet jetzt das Tailwind CSS-Framework als Standard-Paginator. Tailwind ist eine CSS-Dienstprogramm-First-Bibliothek, die CSS-Klassen für den einmaligen Gebrauch bereitstellt. Es bietet den Vorteil, dass Sie Ihre Styling-Informationen an einem Ort haben, anstatt sie zu verteilen. Sie können vordefinierte Klassen direkt auf Ihr HTML-Dokument anwenden.
Rückenwind bietet auch die Möglichkeit, reaktionsschnelle Designs zu erstellen. Es bietet ein mobiles erstes System ähnlich dem von Bootstrap. Dies bedeutet, dass nicht vordefinierte Dienstprogramme auf alle Bildschirmgrößen reagieren, während vorab festgelegte Dienstprogramme an bestimmten Punkten wirksam werden.
Tailwind bietet auch einen Just-in-Time-Modus, mit dem Sie Ihre Stile bei Bedarf generieren können, anstatt alles beim ersten Erstellen rendern zu lassen. Dies macht es schneller als die Verwendung von normalem CSS. Ein weiterer Vorteil, den dies bietet, besteht darin, dass Sie Ihre nicht verwendeten Produktionsstile nicht loswerden müssen, sodass Sie Ihren Code in mehreren Umgebungen verwenden können.
Interessant ist auch, dass Laravel Jetstream mit Rückenwind gebaut wurde.
4. Auftragsvergabe
Mit dieser Funktion können Sie eine Reihe von Jobs zu einem bestimmten Zeitpunkt ausführen und bestimmte Aktionen ausführen, wenn deren Ausführung abgeschlossen ist. Das Busfassade bietet eine Stapelmethode, mit der Sie Aufträge versenden können.
Sie können dies zusammen mit anderen Abschlussrückrufen wie durchführen Fang, dann und schließlich um Ihren Jobs Funktionen hinzuzufügen.
Verwenden Sie App \ Jobs \ ProcessPodcast.
benutze App \ Podcast;
Verwenden Sie Illuminate \ Bus \ Batch.
Verwenden Sie Illuminate \ Support \ Facades \ Bus.
benutze Throwable;
$ batch = Bus:: batch ([
neuer ProcessPodcast (Podcast:: find (1)),
neuer ProcessPodcast (Podcast:: find (2)),
neuer ProcessPodcast (Podcast:: find (3)),
neuer ProcessPodcast (Podcast:: find (4)),
neuer ProcessPodcast (Podcast:: find (5)),
]) -> dann (Funktion (Batch $ Batch) {
// Alle Jobs erfolgreich abgeschlossen ...
}) -> catch (Funktion (Batch $ batch, Throwable $ e) {
// Erster Batch-Job-Fehler erkannt ...
}) -> endlich (Funktion (Batch $ Batch) {
// Der Batch wurde ausgeführt ...
}) -> dispatch ();
return $ batch-> id;
Zu Beginn müssen Sie eine Migrationstabelle erstellen, die Jobmetadaten wie Abschlussquoten enthält. Verwenden Sie den Befehl PHP Artisan Queue: Batches-Tabelle um dies zu tun. Und dann PHP Handwerker migrieren um sie zu migrieren. Sie können jetzt Ihre stapelbaren Aufträge definieren und dann versenden, wenn Sie bereit sind.
5. Modellfabrikklassen
Lassen Sie uns zunächst Modellfabriken diskutieren. Diese werden verwendet, um Ihre Datenbanken mit Testdaten zu versehen. Diese gefälschten Daten sind zu Testzwecken wichtig, bevor echte Benutzerdaten eingefügt werden.
In Laravel 8 wurden die früheren Eloquent-Modellklassen vollständig durch klassenbasierte Fabriken ersetzt. Damit können Sie jetzt Objektzustände einfach mit Methoden verwalten. Diese Methoden rufen normalerweise die auf Zustand() Methode, die in der Laravel-Basisfabrikklasse angegeben ist. Das Zustand() Die Methode verwendet als Argument eine Funktion, die ein Array von Attributen aufnimmt, die der Factory zugewiesen sind.
6. Verbesserte Wartung
Zuvor enthielt Laravel eine Zulassungsliste mit IP-Adressen, mit denen Sie im Wartungsmodus auf die Anwendung zugreifen konnten. Dies wurde entfernt und durch eine einfachere "geheime" Lösung ersetzt. Sie können das Bypass-Token mit dem angeben Geheimnis Möglichkeit.
Im Wartungsmodus können Sie auf Ihre Anwendungs-URL zugreifen, und Laravel leitet das Bypass-Cookie automatisch an Ihren Browser weiter. Sobald das Cookie ausgegeben wurde, greifen Sie normalerweise auf die Anwendung zu, als wäre sie nicht im Wartungsmodus.
Ihren Benutzern können Fehler auftreten, wenn Sie PHP verwenden Handwerker unten während der Bereitstellung. Um dies zu vermeiden, bietet Laravel die Option, eine Wartungsmodusansicht zu rendern, die bei jeder Anforderung zurückgegeben wird. Sie können eine Vorlage mit der Renderoption des Befehls down vorab rendern.
7. Zeittest-Helfer
Laravel bietet jetzt die Möglichkeit, die aktuelle Zeit zu manipulieren. Sie haben die Möglichkeit, Ihre Zeitattribute als Millisekunden, Stunden, Tage usw. zu verwenden.
öffentliche Funktion testTimeCanBeManipulated ()
{
// Reise in die Zukunft ...
$ this-> travel (5) -> Millisekunden ();
$ this-> travel (5) -> Sekunden ();
$ this-> Reise (5) -> Minuten ();
$ this-> travel (5) -> Stunden ();
$ this-> travel (5) -> days ();
$ this-> travel (5) -> week ();
$ this-> Reise (5) -> Jahre ();
// Reise in die Vergangenheit ...
$ this-> Reise (-5) -> Stunden ();
// Reise zu einer expliziten Zeit ...
$ this-> travelTo (now () -> subHours (6));
// Zurück in die Gegenwart ...
$ this-> travelBack ();
}
Mit diesen Hilfsfunktionen können Sie Ihre Arbeit ordentlich und einfach ausführen, indem Sie den Methoden beschreibende Namen geben.
8. Verbesserte Ratenbegrenzung
Mit der Ratenbegrenzung können Sie das Verkehrsaufkommen verwalten, das Sie auf einer bestimmten Route oder Routengruppe erhalten. Dies kann mit dem erreicht werden Gas Middleware. Die Gas-Middleware nimmt den Namen des Ratenbegrenzers an, den Sie auf einer Route verwenden möchten. Ein HTTP-Anforderungscode (429) wird zurückgegeben, wenn die eingehende Anforderung ein bestimmtes Ratenlimit überschreitet.
In Laravel 8 wurde der Ratenbegrenzer flexibler gebaut und bietet dennoch Abwärtskompatibilität. Mit der Rückruffunktion für Ratenbegrenzer können Sie dynamisch geeignete Ratenlimits erstellen, die für authentifizierte Benutzer oder eingehende Anforderungen festgelegt wurden.
Aufregende Zeiten für Laravel
Laravel ist leicht zu erlernen und bietet einen ausführlichen Entwicklerleitfaden mit leicht verständlichen Beispielen. Es bietet fast wöchentlich Fehlerbehebungen und Patches sowie jährliche Hauptversionen (ca. September). Wenn Sie weitere Hilfe benötigen, bietet Laravel die Laracasts-Plattform, auf der Sie kompetente Hilfe erhalten. Die Plattform bietet jedoch kostenpflichtige Lektionen für die Webentwicklung.
Für einen Webentwickler ist Laravel ein Muss. Es ist Open Source, kostenlos und mit einer Community von über 40.000 Benutzern. Es ist eine Technologie, die es wert ist, im Auge behalten zu werden.
Möchten Sie fortgeschrittene Webentwicklung lernen? Vermeiden Sie es, sich wiederholenden Code zu schreiben, indem Sie stattdessen diese Webentwicklungs-Frameworks verwenden.
Weiter lesen
- Programmierung
- Web Entwicklung
- PHP-Programmierung
Abonnieren Sie unseren Newsletter
Abonnieren Sie unseren Newsletter für technische Tipps, Rezensionen, kostenlose E-Books und exklusive Angebote!
Noch ein Schritt…!
Bitte bestätigen Sie Ihre E-Mail-Adresse in der E-Mail, die wir Ihnen gerade gesendet haben.