Задать вопрос
wladyspb
@wladyspb
Программист

Как отловить исключение в Laravel и продолжить работу?

Ларавел использует достаточно удобный общий обработчик ошибок, но дефолтное поведение предполагает, что исключение должно завершать работу программы. Однако, я использую обращение к несущественному сервису, и знаю, что мне делать дальше если он не ответит. Тем не менее, когда он бросает исключение, рендер страницы прерывается и выдаётся ошибка(
Я пытался отлавливать исключение, явно указывая класс исключения, пытался отловить общее исключение, пытался отключить exeption_handler - но мой блоr try catch полностью игнорируется.
Кусок кода (Предполагается, что он должен нормально отрабатывать в ЛЮБОЙ ситуации - и если я не достучусь до кликхауса, и если достучусь, но не будет результатов):

set_exception_handler(null);
            try{
                $raw = Clickhouse::select("SELECT AVG(rate) as rate FROM Likes WHERE game = {$game->id}");
            } catch (\Exception $e) {
                return $game->base_rate;
            }
            restore_exception_handler();
            if (!$raw) {
                return $game->base_rate;
            }
  • Вопрос задан
  • 958 просмотров
Подписаться 3 1 комментарий
Подписчики вопроса 3 К ответам на вопрос (2)