- 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
И еще - зачем тут catch (\Exception $e) ?
В использовании исключений для неисключительных ситуаций (питонистам не понять, для них даже конец просматриваемого массива - исключительная ситуация).
Ну если exception стоит столько же, сколько и обычная проверка то в чем проблема?
В java вон есть checked exceptions, и все те три человека в мире которые умеют ими пользоваться -- они ими пользуются и рады
>питонистам не понять, для них даже конец просматриваемого массива - исключительная ситуация
Для сишников это вообще фатальная ситуация, и что?
Да хуй с ней, со скоростью. Просто читается плохо. Особенно если автор ловит не конкретное исключение, а абстрактный Exception, а в try засунул побольше разных вызовов.
А если юзаешь дебаггер, то из-за подобной хуйни нельзя включить "break on exception" ибо будут сотни ложных остановок.
> Для сишников это вообще фатальная ситуация
Ты не понял. Под концом массива имеется в виду не вылет за границу, а StopIteration во время обхода массива. А обращение по кривому индексу - таки исключительная ситуация.
> Просто читается плохо.
Зато безопасно по умолчанию.
>нельзя включить "break on exception"
Он в питоне вообще есть? Алсо, зачем это там?
Кстати, кому-нибудь знание e пригодилось? Вот знание пары знаков пи иногда нужно, а как с e? По идее, человек либо использует сразу функцию exp, либо заданную где-то в стандартной библиотеке константу (если это зачем-то понадобилось), либо для прикидки на бумажке экспоненту раскладывает в ряд и работает с аргументом.
Почему? Это вполне удобно.