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

Ошибки

Каждое исключение библиотеки:

  • реализует Selyusize\EventsRouter\Contract\Exception\ExceptionInterface, поэтому любую ошибку роутера можно поймать одним catch;
  • содержит в тексте ссылку на свою страницу в этом разделе: что произошло, почему и как исправить.
<?php

use Selyusize\EventsRouter\Contract\Exception\ExceptionInterface;

try {
    $events->dispatch($event);
} catch (ExceptionInterface $error) {
    // ошибка конфигурации или работы роутера, текст содержит ссылку на документацию
}
Исключение Когда возникает
InvalidEventName имя события не является корректным топиком
InvalidTopicPattern шаблон топика в маршруте записан с ошибкой
InvalidRoute класс слушателя или middleware в маршруте не найден или не реализует нужный интерфейс
InvalidConfig в EventRouterFactory::create() передан неизвестный ключ конфига или значение не того типа
UnmappableEvent в PSR-14 адаптер передан объект без EventInterface, а маппера нет

С 'locale' => 'en' сообщения на английском, а ссылки ведут на эти же страницы, см. Конфигурацию.

Страницы появляются вместе с исключениями: CI не пропустит исключение без страницы.