Код IT
← Каталог

Обработка исключений в прикладном коде PHP — Перехват Exception и Error

Фрагмент из «Обработка исключений в прикладном коде PHP»: Перехват Exception и Error.

PHP main.php
try {
    processOrder($id);
} catch (\PDOException $e) {
    // База недоступна — отдельная ветка
    logError('db', $e);
    showServiceUnavailable();
} catch (\TypeError $e) {
    // Ошибка типов — чаще баг в коде
    logError('bug', $e);
    throw $e; // проброс после логирования
} catch (\Throwable $e) {
    logError('general', $e);
    showGenericError();
}
try {
    processOrder($id);
} catch (\PDOException $e) {
    // База недоступна — отдельная ветка
    logError('db', $e);
    showServiceUnavailable();
} catch (\TypeError $e) {
    // Ошибка типов — чаще баг в коде
    logError('bug', $e);
    throw $e; // проброс после логирования
} catch (\Throwable $e) {
    logError('general', $e);
    showGenericError();
}