
Events & Listeners
Criação de Events, registro de Listeners, dispatch de Events, Event Subscribers, Listeners em queue, Broadcast Events
1O que é um Event no Laravel?
O que é um Event no Laravel?
Resposta
Um Event é uma classe que representa uma ação ou ocorrência significativa que aconteceu na aplicação. Ele serve como uma mensagem portadora de dados que pode ser dispatchada e ouvida por múltiplos Listeners de maneira desacoplada. Os Events permitem respeitar o princípio Open/Closed adicionando comportamentos sem modificar o código existente.
2Como criar um Event e seu Listener associado com o Artisan?
Como criar um Event e seu Listener associado com o Artisan?
Resposta
O comando 'php artisan make:event' cria um Event, e 'php artisan make:listener' cria um Listener. Ao adicionar a opção --event=NomeEvent, o Listener é automaticamente tipado para receber esse Event. Também é possível definir o mapping no EventServiceProvider e então executar 'php artisan event:generate' para gerar automaticamente todos os Events e Listeners faltantes.
3Onde registrar o mapping entre Events e Listeners no Laravel?
Onde registrar o mapping entre Events e Listeners no Laravel?
Resposta
O mapping Events-Listeners é feito na propriedade $listen do EventServiceProvider (App\Providers\EventServiceProvider). Cada chave é o nome completo da classe Event, e o valor é um array de Listeners. Desde o Laravel 11 também é possível usar o auto-discovery com atributos PHP 8 #[ListensTo] para evitar o registro manual.
Como dispatchar (disparar) um Event no Laravel?
Qual é a estrutura básica de um Listener no Laravel?
+15 perguntas de entrevista
Outros temas de entrevista Laravel
Fundamentos de PHP
Fundamentos de POO em PHP
Composer & Autoloading
Fundamentos do Laravel
Routing do Laravel
Blade Templates
Request & Response
Fundamentos do Eloquent ORM
Eloquent Relationships
Migrations & Schema Builder
Validação e formulários
Autenticação
Autorização e Policies
API Resources & Authentication
Middleware
Service Container & DI
Queues & Jobs
Notificações & 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
Domine Laravel para sua proxima entrevista
Acesse todas as perguntas, flashcards, testes tecnicos, exercicios de code review e simuladores de entrevista.
Comece gratis