Карточка Middle Исключения и ошибки обновлено
Иерархия Throwable
Вопрос
Как устроена иерархия исключений PHP?
Попробуйте сами
Ответьте про себя или вслух, потом откройте ответ и сверьтесь.
Показать ответ и разбор
Коротко
Throwable - Error: TypeError (и ArgumentCountError), ValueError, ArithmeticError (DivisionByZeroError), UnhandledMatchError, CompileError. - Exception: ErrorException, JsonException, RuntimeException, LogicException (InvalidArgumentException, DomainException) и другие из SPL.
Ответ
Throwable
Error:TypeError(иArgumentCountError),ValueError,ArithmeticError(DivisionByZeroError),UnhandledMatchError,CompileError.Exception:ErrorException,JsonException,RuntimeException,LogicException(InvalidArgumentException,DomainException) и другие из SPL. Свои исключения наследуютExceptionили подходящий класс SPL, а неError.
Разбор
Реализовать Throwable напрямую в своём классе нельзя, только через наследование Exception или Error.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.