ホームページ >PHPフレームワーク >Laravel >Laravelイベントシステムの動作原理を解析する
Laravel の次のチュートリアル コラムでは、Laravel イベント システムの動作原理を紹介します。
protected $listen = [ Registered::class => [ SendEmailVerificationNotification::class, ], 'App\Events\Test' => [ 'App\Listeners\EventListener', ], ];
$ php artisan event:generate
<?php namespace App\Events;use App\Models\User;use Illuminate\Broadcasting\Channel;use Illuminate\Broadcasting\InteractsWithSockets;use Illuminate\Broadcasting\PresenceChannel;use Illuminate\Broadcasting\PrivateChannel;use Illuminate\Contracts\Broadcasting\ShouldBroadcast;use Illuminate\Foundation\Events\Dispatchable;use Illuminate\Queue\SerializesModels;class Test{ use Dispatchable, InteractsWithSockets, SerializesModels; /** * Create a new event instance. * * @return void */ public function __construct($id) { echo '触发事件成功!---------'.$id; $this->id = $id; } /** * Get the channels the event should broadcast on. * * @return \Illuminate\Broadcasting\Channel|array */ public function broadcastOn() { return new PrivateChannel('channel-name'); }}
<?php namespace App\Listeners; use App\Events\Test;use Illuminate\Contracts\Queue\ShouldQueue; use Illuminate\Queue\InteractsWithQueue; class EventListener{ /** * Create the event listener. * * @return void */ public function __construct() { // } public function handle(Test $event) { echo '监听成功!监听值:'.$event->id; }}
public function test1(){ event(new Test('11111111')); return '测试事件系统';}
php artisan event:generate php artisan make:event UserRegisteredEvent php artisan make:listener SendMailListener --event="UserRegisteredEvent"
関連する推奨事項:
以上がLaravelイベントシステムの動作原理を解析するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。