Как перехватить Exception в функции на уровне выше?
Например, у меня есть метод:
public static function getResponse(string $string)
{
//.....
try {
$response = $this->client->post($this->url, [
'query' => $queryUrl,
'body' => $queryBodyEncoded,
] + $this->options);
} catch (RequestException $e) {
throw new ErrorException($e->getMessage());
}
//.....
}
Я вызываю этот метод из своего класса:
try {
myClass::getResponse($string);
} catch (RequestException $e) {
echo $e->getMessage();
}
По итогу все ошибки обрабатываются в первом try catch (вложенном). Как поймать и обработать Exception в моей функции?
В методе перехватывается исключение RequestException
и вызывается ErrorException
. Соответственно, чтобы перехватить его выше, нужно перехватывать именно ErrorException
, так как возникает уже именно оно
try {
myClass::getResponse($string);
} catch (ErrorException $e) {
echo $e->getMessage();
}
Либо оставить как было, но в методе либо вызывать снова throw new RequestException()
, либо вообще его не перехватывать в методе
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Перестает авторизировать пользователя спустя несколько дней после регистрацииВ БД все данные остаются
Есть данные JSON(многомерный массив(больше трех вложенных друг в друга): https://apitrademc