Вниз  PHP и мелкие вопросы
- 7.04.2016 / 19:27
kingdosya
  Пользователь

kingdosya 
Сейчас: Offline
Цитата Jahak:
kingdosya, а если тебе придется перехватывать различные классы исключений, будешь писать такую простынь
Открыть спойлер
не пойму тех кто обрабатывает исключений внутри catch. Мне кажется будет удобно если обрабатывать в тех классах исключений.

Изменено kingdosya (7.04 / 19:28) (всего 1 раз)
- 7.04.2016 / 20:07
Jahak
  Пользователь

Jahak 
Сейчас: Offline
Цитата kingdosya:
не пойму тех кто обрабатывает исключений внутри catch. Мне кажется будет удобно если обрабатывать в тех классах исключений.
Вот сейчас не понял. Можешь набросать код, как это будет выглядеть в твоем понимании:-/
- 7.04.2016 / 22:10
Витаминыч
  Супермодератор

Витаминыч 
Сейчас: Offline
Цитата kingdosya:
не пойму тех кто обрабатывает исключений внутри catch. Мне кажется будет удобно если обрабатывать в тех классах исключений.
В смысле? У тебя есть определенные классы исключений, у каждого свои методы для их обработки. Потом в нужном catch просто вызываешь метод того класса, которые выкидывает исключение в этом try.

Итого в самом коде обработки нет, она в том классе происходит.

Либо ты как-то не так все это понимаешь в принципе :hack:
__________________
 わからない!!
- 7.04.2016 / 22:14
Koenig
  Модератор форума

Koenig 
Сейчас: Offline
Витаминыч, да все исключения имеют один интерфейс, все одинаково
__________________
 Магистр Мёда
- 8.04.2016 / 07:28
Jahak
  Пользователь

Jahak 
Сейчас: Offline
kingdosya, почитай тут и тут

Изменено Jahak (8.04 / 07:29) (всего 1 раз)
- 8.04.2016 / 12:48
kingdosya
  Пользователь

kingdosya 
Сейчас: Offline
Цитата Витаминыч:
Потом в нужном catch просто вызываешь метод того класса
вот здесь почему не использовать конструктор? Т.е. вызывать методы не из catch а вызывать приватные методы в конструкторе. например
  1. class my extends exception {
  2. __construct() {
  3. // обработать исключение
  4. // посетителю показать страницу ошибки
  5. exit();
  6. }
  7. }

function fff() {
try {

}
catch (my $e) {
// пусто !!! т.к. обработка происходить в конструкторе через приватные методы. По этому не знаю что здесь пишут другие
}
}
- 8.04.2016 / 13:06
kingdosya
  Пользователь

kingdosya 
Сейчас: Offline
Цитата Jahak:
kingdosya, почитай тут и тут
я почитал эти статьи еще до этого. И я вообще не это хотел спросить
- 8.04.2016 / 13:53
kingdosya
  Пользователь

kingdosya 
Сейчас: Offline
ТАК ДАВАЙТЕ Я ВАМ ПОДРОБНО ОБЪЯСНЯЮ ЧЕГО ЖЕ Я ХОЧУ:
много текста


Изменено aNNiMON (8.04 / 14:27) (всего 3 раза)
- 8.04.2016 / 14:24
aRiGaTo
  Пользователь

aRiGaTo 
Сейчас: Offline
kingdosya, нет, так как ты теряешь контекст исключения. Как ты их там, сверху, собираешься обрабатывать? Показывать юзеру, что у тебя что-то не то в таблице users_passes - нехорошо и опасно (раскрытие системы). Та же история и с обработкой сразу же при возникновении (т.е. в твоём классе db).
А вот, если ты его поймаешь при регистрации и скажешь юзеру мол «извини, по технических причинам не могу тебя зарегать», то будет очень даже хорошо.
__________________
 don't tread on me
- 8.04.2016 / 14:28
Витаминыч
  Супермодератор

Витаминыч 
Сейчас: Offline
kingdosya, ну ответ как бы очевиден.. Для красоты кода, конечно, можешь совсем не отлавливать исключения :кек2:

Ты просто не совсем понял, какой код подразумевается под "повторяющимся".. это то, что можно спокойно вынести в отдельный метод/функцию. try-cath к такому коду не относится.
Оставляй, если знаешь, как точно разобрать исключение (нет коннекта к БД и т.д.)

В яве от него не деться никуда, например. Если только совсем не писать :кек2:
__________________
 わからない!!
Наверх  Всего сообщений: 4740
Фильтровать сообщения
Поиск по теме
Файлы топика (129)