РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
⊗pplrSpEvHl 182 of 210 menu

Хелпер event в Laravel

Когда факт произошёл, событие нужно отправить. Самый прямой способ в коде приложения - хелпер event. В него передают уже созданный объект события с данными в конструкторе.

Обычно вызов ставят после сохранения модели: заказ создан - сразу сообщаем приложению об этом. Хелпер не требует фасада и use для Event - достаточно импорта класса события:

<?php use App\Events\OrderShipped; public function ship(Order $order) { // ... смена статуса, сохранение event(new OrderShipped($order)); return 'Order shipped'; } ?>

После event(...) Laravel найдёт всех слушателей этого события и по очереди вызовет их handle. Если слушателей несколько, сработают все. Если ни одного - вызов просто ничего не сделает.

Важно: хелпер создаёт экземпляр через new. Аргументы конструктора события должны совпадать с тем, что вы передаёте. В следующем уроке разберём другой синтаксис отправки - через ::dispatch у класса события.

После сохранения пользователя вызовите event(new UserRegistered(...)).

Убедитесь, что слушатель срабатывает (dump или лог в handle).

Что передают в хелпер event - класс или уже созданный объект?

Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить