Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Обработка ошибок MySQLi [2]
В PHP 5.5 и более поздних версиях также можно использовать блок finally после блока catch. Код в блоке finally всегда будет выполняться после кода в блоках try и catch, вне зависимости было ли брошено исключение или нет, перед тем как продолжится нормальное выполнение кода. whether an exception has been thrown, and before normal execution resumes.
Ето очен радует
etoYA
Отправлено: 07 Февраля, 2013 - 21:59:44
Участник
Покинул форум
Сообщений всего: 1859
Дата рег-ции: Июль 2011 Откуда: Крым
Покинул форум
Сообщений всего: 231
Дата рег-ции: Окт. 2011
Помог: 5 раз(а)
[+]
Нашел отличные статьи на Хабре, в общем, кажется что-то понял с этими исключениями.
etoYA пишет:
Методов уйма
Как я понял, класс-наследник исключения пустым должен быть, он нужен только для определения типа исключения, логики там быть не должно. Или это не так?
DelphinPRO
Отправлено: 08 Февраля, 2013 - 16:47:15
Активный участник
Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012
Помог: 353 раз(а)
_Dark_ пишет:
Как я понял, класс-наследник исключения пустым должен быть, он нужен только для определения типа исключения, логики там быть не должно. Или это не так?
не обязательно. иногда удобно логику засунуть в наследника \Exception
например, логирование ошибок.
или переопределить __construct для передачи в исключение нужных вам параметров.
+ иногда удобно переопределить магический метод __toString
в общем это решается в каждом отдельном случае индивидуально.
Категорично говорить "логики там быть не должно" нельзя.
Покинул форум
Сообщений всего: 231
Дата рег-ции: Окт. 2011
Помог: 5 раз(а)
[+]
DelphinPRO пишет:
_Dark_ пишет:
Как я понял, класс-наследник исключения пустым должен быть, он нужен только для определения типа исключения, логики там быть не должно. Или это не так?
не обязательно. иногда удобно логику засунуть в наследника \Exception
например, логирование ошибок.
или переопределить __construct для передачи в исключение нужных вам параметров.
+ иногда удобно переопределить магический метод __toString
в общем это решается в каждом отдельном случае индивидуально.
Категорично говорить "логики там быть не должно" нельзя.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.