Выбор ответа Junior Исключения и ошибки обновлено

Перехват нескольких типов

Вопрос

Как одним блоком поймать InvalidArgumentException и JsonException?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: catch (InvalidArgumentException JsonException $e). С PHP 7.1 типы в catch объединяются вертикальной чертой.

Варианты ответа

  1. catch (InvalidArgumentException | JsonException $e)правильный ответ
  2. catch (InvalidArgumentException, JsonException $e)
  3. catch ([InvalidArgumentException, JsonException] $e)
  4. Никак, нужно два блока

Разбор

С PHP 7.1 типы в catch объединяются вертикальной чертой. С PHP 8.0 можно не указывать переменную: catch (JsonException), если она не нужна. Запятая и массив синтаксически неверны.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.