Events bieten eine einfache Beobachterimplementierung, die es einem Benutzer ermöglicht, verschiedene in der Webanwendung ausgelöste Ereignisse zu abonnieren und anzuhören. Alle Ereignisklassen in Laravel werden im Ordnerapp/Eventsund die Listener im Ordnerapp/Listenersgespeichert.
Der handwerkliche Befehl zum Generieren von Ereignissen und Listenern in Ihrer Webanwendung wird unten angezeigt −
php artisan event:generate
Dieser Befehl generiert die Ereignisse und Listener für die jeweiligen Ordner, wie oben beschrieben.
Ereignisse und Listener bieten eine hervorragende Möglichkeit, eine Webanwendung zu entkoppeln, da ein Ereignis mehrere unabhängige Listener haben kann voneinander. Der vom Befehl artisan erstellte Ordner „events“ enthält die folgenden zwei Dateien: event.php und SomeEvent.php. Sie werden hier angezeigt −
Nach dem Login kopieren
Wie oben erwähnt, enthältevent.phpdie grundlegende Definition der KlasseEventund ruft den NamespaceAppEventsauf. Bitte beachten Sie, dass die benutzerdefinierten oder benutzerdefinierten Ereignisse in dieser Datei erstellt werden.
Nach dem Login kopieren
Beachten Sie, dass diese Datei Serialisierung zum Übertragen von Ereignissen in einer Webanwendung verwendet und dass die erforderlichen Parameter auch in dieser Datei initialisiert werden.
Wenn wir beispielsweise eine Bestellvariable im Konstruktor zum Registrieren eines Ereignisses initialisieren müssen, können wir dies tun Gehen Sie folgendermaßen vor: −
public function __construct(Order $order) { $this->order = $order; }
Listener verwalten alle Aktivitäten, die in einem registrierten Ereignis erwähnt werden. Der handwerkliche Befehlevent:generateerstellt allelistenersim Verzeichnisapp/listeners. Der Listeners-Ordner enthält eine DateiEventListener.php, die alle für die Handhabung von Listenern erforderlichen Methoden enthält.
Nach dem Login kopieren
Wie im Code erwähnt, enthält es eineHandle-Funktion zum Verwalten verschiedener Ereignisse. Wir können verschiedene unabhängige Listener erstellen, die auf ein einzelnes Ereignis abzielen.
Das obige ist der detaillierte Inhalt vonLaravel – Ereignisbehandlung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!