Heim > PHP-Framework > Laravel > Hauptteil

Detailliertes Beispiel für die Laravel-Ereignisüberwachung

WBOY
Freigeben: 2022-04-12 20:48:42
nach vorne
2311 Leute haben es durchsucht

Dieser Artikel vermittelt Ihnen relevantes Wissen über laravel, in dem hauptsächlich Probleme im Zusammenhang mit der Ereignisüberwachung vorgestellt werden. Die Schritte zur Implementierung der Ereignisüberwachung bestehen darin, Ereignisse zu erstellen, Monitore zu erstellen, Ereignisse und Monitore zu binden und dann Ereignisse wie folgt auszulösen Schauen Sie sich das Beispiel an, ich hoffe, es wird für alle hilfreich sein. 🔜 der realen Gesellschaft Die abstrakte Kartierung ist in unserer realen Gesellschaft dasselbe. Wir beobachten Veränderungen in den Dingen und reagieren auf Veränderungen, damit sich die Dinge gemäß unseren Erwartungen entwickeln. Wenn die Realität auf Codelogik abgebildet wird, werden Ereignisse und ihre Verarbeitungslogik normalerweise getrennt. Schließlich muss nicht auf alle Ereignisse sofort reagiert werden. In Kombination mit Warteschlangen können wir den Workflow der Ereignisüberwachung und -verarbeitung perfekter gestalten.

Detailliertes Beispiel für die Laravel-EreignisüberwachungAnwendungsfall:

Änderungen der Protokolldateigröße überwachen Benutzeranmeldung: Benutzeranmeldezeiten aufzeichnen, zugriffsbezogene Informationen aufzeichnen

Schritte zur Implementierung der Ereignisüberwachung:

1. Ereignis erstellen: Ereignis

2. Überwachung erstellen :listener

3. Bindung von Ereignissen und Überwachung
4. Auslösen von Ereignissen

1. Manuelles Erstellen von Ereignissen und Überwachung

1. Anmeldeereignisse erstellen: Ereignis
app/Events/UserLogin.php

php artisan make:event UserLogin//获取用户信息实例
 public function __construct(User $user){
    $this->user = $user;}
Nach dem Login kopieren

2. Benutzer erstellen Senden Ein Listener an die Anmelde-E-Mail und gleichzeitig das UserLogin-Anmeldeereignis binden: listener app/Listeners/EmailAdminUserLogin.php

php artisan make:listener EmailAdminUserLogin --event=UserLogin //日志打印登录用户信息public function handle(UserLogin $event)
    {//        dd($event);
        //日志打印登录用户信息
        Log::info($event->user->name . '已经登录');
    }
Nach dem Login kopieren

3. Registrierungsereignis und Listening-Bindungsbeziehung
Ein Ereignis kann mehreren Listenern entsprechen

app /Providers/EventServiceProvider .php

protected $listen = [
    'App\Events\UserLogin' => [
        'App\Listeners\EmailAdminUserLogin',
    ],];
Nach dem Login kopieren

4. Ereignisse auslösen, wenn sich der Benutzer anmeldet app/Http/Controllers/Auth/LoginController.php

//覆写AuthenticatesUsers类的authenticated方法protected function authenticated(Request $request, $user){
    //触发事件
    event(new UserLogin($user));}
Nach dem Login kopieren
Detailliertes Beispiel für die Laravel-Ereignisüberwachung2. Ereignisse schnell generieren und überwachen

Hier wird auf dem Listen-Attribut basiert in app/Providers/EventServiceProvider.php Generieren Sie entsprechende Ereignisse und Monitore

php artisan event:generate
Nach dem Login kopieren

[Verwandte Empfehlungen: Laravel-Video-Tutorial

]

Das obige ist der detaillierte Inhalt vonDetailliertes Beispiel für die Laravel-Ereignisüberwachung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage