Event cho phép giao tiếp loosely coupled—khi điều gì đó xảy ra (event UserCreated), các listener phản ứng.
- Tạo event:
php artisan make:event UserCreatedvới propertypublic $user. - Tạo listener:
php artisan make:listener SendWelcomeEmail --event=UserCreated. - Dispatch từ model:
UserCreated::dispatch($user). - Listener thực thi đồng bộ theo mặc định, hoặc queue với
implements ShouldQueue. - Event tách biệt code—logic tạo user không biết về email, notification. Laravel 11+:
EventServiceProviderđã bị xóa—listener đăng ký trongAppServiceProviderquaEvent::listen()hoặc dùng auto-discovery (event discovery tự động).