
Events & Listeners
Event creation, listener registration, dispatching events, event subscribers, queued listeners, broadcast events
1Qu'est-ce qu'un Event dans Laravel ?
Qu'est-ce qu'un Event dans Laravel ?
Réponse
Un Event est une classe qui représente une action ou un événement significatif qui s'est produit dans l'application. Il sert de message porteur de données qui peut être dispatché et écouté par plusieurs listeners de manière découplée. Les events permettent de respecter le principe Open/Closed en ajoutant des comportements sans modifier le code existant.
2Comment créer un Event et un Listener associé avec Artisan ?
Comment créer un Event et un Listener associé avec Artisan ?
Réponse
La commande 'php artisan make:event' crée un Event, et 'php artisan make:listener' crée un Listener. En ajoutant l'option --event=NomEvent, le Listener est automatiquement typé pour recevoir cet Event. Il est également possible de définir le mapping dans EventServiceProvider puis exécuter 'php artisan event:generate' pour générer automatiquement tous les Events et Listeners manquants.
3Où enregistrer le mapping entre Events et Listeners dans Laravel ?
Où enregistrer le mapping entre Events et Listeners dans Laravel ?
Réponse
Le mapping Events-Listeners se fait dans la propriété $listen du EventServiceProvider (App\Providers\EventServiceProvider). Chaque clé est le nom complet de la classe Event, et la valeur est un tableau des Listeners. Depuis Laravel 11, il est également possible d'utiliser l'auto-discovery avec des attributs PHP 8 #[ListensTo] pour éviter l'enregistrement manuel.
Comment dispatcher (déclencher) un Event dans Laravel ?
Quelle est la structure de base d'un Listener dans Laravel ?
+15 questions d'entretien
Autres sujets d'entretien Laravel
Les bases de PHP
POO en PHP
Composer & Autoloading
Fondamentaux Laravel
Routing Laravel
Blade Templates
Request & Response
Eloquent ORM - Les bases
Eloquent Relationships
Migrations & Schema Builder
Validation & Formulaires
Authentication
Authorization & Policies
API Resources & Authentication
Middleware
Service Container & DI
Queues & Jobs
Notifications & Mail
File Storage
Testing & PHPUnit
Caching
Livewire & Inertia
Eloquent Advanced
Repository Pattern
Laravel Packages
Performance Optimization
Security Best Practices
Laravel Octane
Laravel Distributed Systems
Observability & Monitoring
Deployment & DevOps
Maîtrise Laravel pour ton prochain entretien
Accède à toutes les questions, flashcards, tests techniques, exercices de code review et simulateurs d'entretien.
Commencer gratuitement