Функцыя catch
Функцыя catch
з'яўляецца часткай блока try-catch і служыць для перахопу выключэнняў, якія могуць быць выкінуты ў блоке try
. Пры ўзнікненні выключэння выкананне кода пераходзіць у адпаведны блок catch
, дзе можна апрацаваць памылку.
Сінтаксіс
try {
// Код, які можа выкінуць выключэнне
} catch (ExceptionType $e) {
// Апрацоўка выключэння
}
Прыклад
Найпрасцейшы прыклад апрацоўкі выключэння:
<?php
try {
throw new Exception('Something went wrong');
} catch (Exception $e) {
echo 'Caught exception: ' . $e->getMessage();
}
?>
Вынік выканання кода:
'Caught exception: Something went wrong'
Прыклад
Апрацоўка розных тыпаў выключэнняў:
<?php
try {
if (rand(0, 1)) {
throw new InvalidArgumentException('Invalid argument');
} else {
throw new RuntimeException('Runtime error');
}
} catch (InvalidArgumentException $e) {
echo 'Invalid argument: ' . $e->getMessage();
} catch (RuntimeException $e) {
echo 'Runtime error: ' . $e->getMessage();
} catch (Exception $e) {
echo 'Generic exception: ' . $e->getMessage();
}
?>
Магчымыя вынікі выканання кода:
'Invalid argument: Invalid argument'
ці
'Runtime error: Runtime error'