Laravel-Verträge sind eine Reihe von Schnittstellen mit verschiedenen Funktionalitäten und Kerndiensten, die vom Framework bereitgestellt werden.
Zum Beispiel verwendet der VertragIlluminateContractsQueueQueueeine Methode, die zum Einreihen von Aufträgen benötigt wird, undIlluminateContractsMailMailerverwendet die Methode zum Versenden von E-Mails.
Jeder definierte Vertrag beinhaltet die entsprechende Umsetzung des Frameworks. Alle Laravel-Verträge sind im GitHub-Repository verfügbar, wie unten erwähnt −
https://github.com/illuminate/contracts
Dieses Repository stellt eine Vielzahl von Verträgen bereit, die im Laravel-Framework verfügbar sind und heruntergeladen und entsprechend verwendet werden können.
Bitte beachten Sie bei der Arbeit mit Laravel-Verträgen die folgenden wichtigen Punkte −
Es ist zwingend erforderlich, Fassaden im Konstruktor einer Klasse zu definieren.
Verträge werden explizit in den Klassen definiert und Sie müssen die Verträge nicht in Konstruktoren definieren.
Beachten Sie den unten aufgeführten Vertrag zur Autorisierung in Laravel −
Nach dem Login kopieren
Der Vertrag verwendet eine Funktion, die einenParameternamensabilityundargumentsenthält, der die Benutzeridentifikation in Form einesArrayverwendet.
Sie müssen einen Vertrag wie in der folgenden Syntax gezeigt definieren −
interface
Verträge werden wie Fassaden verwendet, um robuste, gut getestete Laravel-Anwendungen zu erstellen. Es gibt verschiedenepraktische Unterschiedebei der Nutzung von Verträgen und Fassaden.
Der folgende Code zeigt die Verwendung eines Vertrags zum Zwischenspeichern eines Repositorys −
cache = $cache; } }
Vertrag enthält keine Implementierung und neue Abhängigkeiten; Es ist einfach, eine alternative Implementierung eines bestimmten Vertrags zu schreiben, sodass ein Benutzer die Cache-Implementierung ersetzen kann, ohne die Codebasis zu ändern.
Das obige ist der detaillierte Inhalt vonLaravel – Verträge. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!