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

Функция event

Функция event применяется для отправки события в диспетчер событий Laravel. Первым параметром передаётся экземпляр класса события, втором параметром можно передать массив дополнительных данных. Функция возвращает массив результатов, полученных от слушателей события.

Синтаксис

<?php event($event, $payload = []); ?>

Пример

Давайте создадим простое событие и запустим его с помощью функции event:

<?php namespace App\Events; use Illuminate\Foundation\Events\Dispatchable; class UserRegistered { use Dispatchable; public $user; public function __construct($user) { $this->user = $user; } } ?>
<?php namespace App\Http\Controllers; use App\Events\UserRegistered; class UserController extends Controller { public function store() { $user = ['id' => 1, 'name' => 'John']; event(new UserRegistered($user)); echo "User registered successfully"; } } ?>

Результат выполнения кода:

"User registered successfully"

Пример

Давайте запустим событие с передачей дополнительных данных в виде массива:

<?php namespace App\Http\Controllers; use App\Events\OrderCreated; class OrderController extends Controller { public function create() { $order = ['id' => 5, 'total' => 500]; $payload = ['user_id' => 10, 'payment_method' => 'card']; event(new OrderCreated($order), $payload); echo "Order created successfully"; } } ?>

Результат выполнения кода:

"Order created successfully"

Пример

Давайте получим результаты от слушателей события. Функция event возвращает массив данных:

<?php namespace App\Http\Controllers; use App\Events\ProductViewed; class ProductController extends Controller { public function show($id) { $event = new ProductViewed($id); $results = event($event); foreach ($results as $result) { echo $result; } } } ?>

Результат выполнения кода:

["Event processed", "Logging completed", "Statistics updated"]

Смотрите также

  • класс Event,
    который предоставляет методы для работы с событиями
  • класс Event::dispatch,
    который запускает событие и возвращает результат
  • класс Event::listen,
    который регистрирует слушателя для события
  • класс Event::subscribe,
    который позволяет подписать класс на несколько событий
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить