- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
public function validate($value) {
try {
$date = new \DateTime($value);
return true;
} catch (\Exception $e) {
return false;
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+4
public function validate($value) {
try {
$date = new \DateTime($value);
return true;
} catch (\Exception $e) {
return false;
}
}
DateTime Validator
guest 08.12.2015 19:16 # 0
И еще - зачем тут catch (\Exception $e) ?
guest 08.12.2015 19:17 # 0
bormand 08.12.2015 19:18 # +2
В использовании исключений для неисключительных ситуаций (питонистам не понять, для них даже конец просматриваемого массива - исключительная ситуация).
guest 08.12.2015 19:21 # 0
guest 08.12.2015 19:41 # +2
Ну если exception стоит столько же, сколько и обычная проверка то в чем проблема?
В java вон есть checked exceptions, и все те три человека в мире которые умеют ими пользоваться -- они ими пользуются и рады
3_14dar 09.12.2015 13:47 # 0
>питонистам не понять, для них даже конец просматриваемого массива - исключительная ситуация
Для сишников это вообще фатальная ситуация, и что?
bormand 09.12.2015 18:45 # +1
Да хуй с ней, со скоростью. Просто читается плохо. Особенно если автор ловит не конкретное исключение, а абстрактный Exception, а в try засунул побольше разных вызовов.
А если юзаешь дебаггер, то из-за подобной хуйни нельзя включить "break on exception" ибо будут сотни ложных остановок.
> Для сишников это вообще фатальная ситуация
Ты не понял. Под концом массива имеется в виду не вылет за границу, а StopIteration во время обхода массива. А обращение по кривому индексу - таки исключительная ситуация.
3_14dar 10.12.2015 16:25 # 0
> Просто читается плохо.
Зато безопасно по умолчанию.
>нельзя включить "break on exception"
Он в питоне вообще есть? Алсо, зачем это там?
moledet2 09.12.2015 11:57 # +1
imihajlov 09.12.2015 12:51 # 0
Steve_Brown 09.12.2015 18:46 # +1
imihajlov 10.12.2015 10:39 # +1
1024-- 10.12.2015 11:48 # +1
Кстати, кому-нибудь знание e пригодилось? Вот знание пары знаков пи иногда нужно, а как с e? По идее, человек либо использует сразу функцию exp, либо заданную где-то в стандартной библиотеке константу (если это зачем-то понадобилось), либо для прикидки на бумажке экспоненту раскладывает в ряд и работает с аргументом.
drull 28.01.2016 21:53 # 0
Почему? Это вполне удобно.