
Events & Listeners
Creación de Events, registro de Listeners, dispatch de Events, Event Subscribers, Listeners en queue, Broadcast Events
1¿Qué es un Event en Laravel?
¿Qué es un Event en Laravel?
Respuesta
Un Event es una clase que representa una acción o suceso significativo ocurrido en la aplicación. Funciona como un mensaje portador de datos que puede ser dispatchado y escuchado por múltiples Listeners de manera desacoplada. Los Events permiten respetar el principio Open/Closed añadiendo comportamientos sin modificar el código existente.
2¿Cómo crear un Event y su Listener asociado con Artisan?
¿Cómo crear un Event y su Listener asociado con Artisan?
Respuesta
El comando 'php artisan make:event' crea un Event, y 'php artisan make:listener' crea un Listener. Al añadir la opción --event=NombreEvent, el Listener queda tipado automáticamente para recibir ese Event. También es posible definir el mapping en EventServiceProvider y luego ejecutar 'php artisan event:generate' para generar automáticamente todos los Events y Listeners faltantes.
3¿Dónde registrar el mapping entre Events y Listeners en Laravel?
¿Dónde registrar el mapping entre Events y Listeners en Laravel?
Respuesta
El mapping Events-Listeners se realiza en la propiedad $listen del EventServiceProvider (App\Providers\EventServiceProvider). Cada clave es el nombre completo de la clase Event, y el valor es un array de Listeners. Desde Laravel 11 también es posible usar el auto-discovery con atributos PHP 8 #[ListensTo] para evitar el registro manual.
¿Cómo dispatchar (disparar) un Event en Laravel?
¿Cuál es la estructura básica de un Listener en Laravel?
+15 preguntas de entrevista
Otros temas de entrevista Laravel
Fundamentos de PHP
Fundamentos de POO en PHP
Composer & Autoloading
Fundamentos de Laravel
Routing de Laravel
Blade Templates
Request & Response
Fundamentos de Eloquent ORM
Eloquent Relationships
Migrations & Schema Builder
Validación y formularios
Autenticación
Autorización y Policies
API Resources & Authentication
Middleware
Service Container & DI
Queues & Jobs
Notificaciones & 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
Domina Laravel para tu próxima entrevista
Accede a todas las preguntas, flashcards, tests técnicos, ejercicios de code review y simuladores de entrevista.
Empieza gratis