Проверяем, что дата соответствует заданному формату
Допустим, мы хотим проверить, что введенная пользователем дата соответствует формату Y-m-d
.
Скопировано
$input_date = '2016-01-12';
$date = DateTime::createFromFormat( 'Y-m-d', $input_date );
if( ! $date || $date->format( 'Y-m-d' ) != $input_date ) {
echo 'Дата не верна';
} else {
echo 'Дата верна';
}
Показать код
Примеры для разных значений дат:
2016-05-25 - true
2004-02-29 - true
2016-05-25s - false
2016-05-1 - false
2016-05-35 - false
2016.05.25 - false
2016/05/25 - false
2005-02-29 - false
(пусто) - false