Выброшено исключение: Деление на ноль
, взялось Привет мир
, если нормальное выполнение после catch будет продолжено, когда НЕ генерируется исключение и наоборот НЕ будет продолжено, если выброшено исключение? если исключение в принципе не бросается, к примеру, какой-нибудь echo 'Hello world';, то и ловить здесь нечего, то и в try/catch его заворачивать не нужно
зачем мне в try код который выполнится
когда этот код сам не бросает исключения
return 1/$x
если нет выброса, то ПОСЛЕ try/catch вывести OK
echo 'ok'
в конец блока try {}try {
test(); // тут бросается исключение - Ошибка
echo 'Ok'; // зачем мне тут эта дичь, если она не бросает исключения
} catch (bla-bla-bla $e) {
echo $e->getMessage(); // выводим - Ошибка
}
echo 'Ok'; // я хочу тут вывести, потому что согласно документации после последнего catch выполнится, если в блоках try нет выброса )))
я хочу тут вывести, потому что согласно документации после последнего catch выполнится, если в блоках try нет выброса
echo 'Ok'; // зачем мне тут эта дичь, если она не бросает исключения
echo 1/0;
- опять же, если вы уверенны, что код Выполниться без ошибки, то его можно и не писать в try блоке $isError = true;
$a = 0;
try {
$a = test(); // тут бросается исключение - Ошибка
$isError = false;
} catch (bla-bla-bla $e) {
// Тут определяемся с ошибкой и пытаемся исправить (упрощённый вариант)
if (...) {
$a = 1;
$isError = false; // Смогли обработать ошибку
}
// Но если не смогли обработать ошибку, то у нас $isError так и останется значением true
}
if ($isError) echo 'Error';
else echo $a;
public function signinAction()
{
if ($this->checkForm('signin')) {
try {
$this->model->signinHandler();
$this->alertMessage('success', 'Добро пожаловать'); // нечего тут делать по идее
$this->redirectToPage('/menu'); // нечего тут делать по идее
} catch (DomainException $domainException) {
$this->alertMessage('danger', $domainException->getMessage());
}
}
$this->pageDescription('Вход');
}