Laravel

Events & Listeners

Creazione di Events, registrazione di Listeners, dispatch di Events, Event Subscribers, Listeners in queue, Broadcast Events

18 domande da colloquio·
Mid-Level
1

Cos'è un Event in Laravel?

Risposta

Un Event è una classe che rappresenta un'azione o un evento significativo che si è verificato nell'applicazione. Funge da messaggio portatore di dati che può essere dispatchato e ascoltato da più Listener in modo disaccoppiato. Gli Events permettono di rispettare il principio Open/Closed aggiungendo comportamenti senza modificare il codice esistente.

2

Come creare un Event e il suo Listener associato con Artisan?

Risposta

Il comando 'php artisan make:event' crea un Event, e 'php artisan make:listener' crea un Listener. Aggiungendo l'opzione --event=EventName, il Listener viene automaticamente tipizzato per ricevere quell'Event. È anche possibile definire il mapping in EventServiceProvider e poi eseguire 'php artisan event:generate' per generare automaticamente tutti gli Events e i Listeners mancanti.

3

Dove registrare il mapping tra Events e Listeners in Laravel?

Risposta

Il mapping Event-Listener avviene nella proprietà $listen di EventServiceProvider (App\Providers\EventServiceProvider). Ogni chiave è il nome completo della classe Event, e il valore è un array di Listener. Da Laravel 11 è anche possibile usare l'auto-discovery con gli attributi PHP 8 #[ListensTo] per evitare la registrazione manuale.

4

Come dispatchare (attivare) un Event in Laravel?

5

Qual è la struttura di base di un Listener in Laravel?

+15 domande da colloquio

Padroneggia Laravel per il tuo prossimo colloquio

Accedi a tutte le domande, flashcards, test tecnici, esercizi di code review e simulatori di colloquio.

Inizia gratis