Перейти к содержанию

InvalidEventName

Selyusize\EventsRouter\Exception\InvalidEventName

Имя события не является корректным топиком.

Почему

Имя события — конкретный топик. Правила:

Правило Неверно Верно
имя не пустое '' ping
без пробельных символов order paid order.paid
без символов шаблонов *, #, {, } order.{order_id}.paid order.42.paid
без пустых сегментов .order, order., order..paid order.paid

Символы *, #, {, } нужны маршрутам, чтобы описать группу событий: order.{order_id}.paid совпадает с order.42.paid, order.43.paid и так далее. У самого события параметр уже подставлен.

Как исправить

  • Подставьте значения параметров в имя: 'order.' . $orderId . '.paid'.
  • Замените пробелы точкой, дефисом или подчёркиванием.
  • Уберите лишние точки.
<?php

// Неверно
new Event('order.{order_id}.paid', ['order_id' => 42]);

// Верно
new Event('order.42.paid');