Laravel

Events & Listeners

Creación de Events, registro de Listeners, dispatch de Events, Event Subscribers, Listeners en queue, Broadcast Events

18 preguntas de entrevista·
Mid-Level
1

¿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?

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?

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.

4

¿Cómo dispatchar (disparar) un Event en Laravel?

5

¿Cuál es la estructura básica de un Listener en Laravel?

+15 preguntas de entrevista

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