muhammad_97
@muhammad_97
PHP-разработчик

Прерывание цепочки вызовов в Laravel?

Добрый вечер. К примеру есть контроллер HomeController, он вызывает метод methodA класса A , тот, в свою очередь, вызывает метод methodB класса B и так далее до класса X. Если все ок, то метод methodX генерирует ответ, который передается по цепочке обратно Home-контроллеру. При этом каждый метод производит какие-нибудь манипуляции с этими данным (или возвращает другие данные). Но, если возникает ошибка, класс генерирует объект (например ErrorClass) с ошибкой и некоторыми дополнительными параметрами, который должен быть сериализован и возвращен как Response.

Проблема в том, что при передаче по этой цепочке придется проверять, является ли ответ метода экземпляром ErrorClass. Конечно, можно сделать так:

echo serialize($object);
die();

, но это не то, что нужно. Если бы был просто текст, я бы сгенерировал исключение, но здесь нужно как-нибудь передать объект в HomeController.

Надеюсь понятно объяснил. Спасибо.
  • Вопрос задан
  • 238 просмотров
Решения вопроса 1
muhammad_97
@muhammad_97 Автор вопроса
PHP-разработчик
Решил проблему, унаследовавшись от Exception. Теперь просто выбрасываю исключение
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы