подтвердить дату - проблема php - PullRequest
0 голосов
/ 16 июня 2011

Я пытаюсь использовать этот код для проверки даты, но я получаю false.в чем причина?

function validate_age($form) {
        $str = "1977/03/27";

        $stamp = strtotime( $str );

        if (!is_numeric($stamp)) {
            echo ("nop");
            return FALSE;
        }

        $year  = date( 'Y', $stamp );
        $month = date( 'm', $stamp );
        $day   = date( 'd', $stamp );


        if (checkdate($year, $month, $day)){
            return TRUE;
        }

        return FALSE; //stops here
}

validate_age($form);

спасибо

Ответы [ 2 ]

3 голосов
/ 16 июня 2011

Проверьте порядок ваших аргументов

checkdate($month, $day, $year);

Все это написано в официальном документе php: http://it.php.net/checkdate

0 голосов
/ 16 июня 2011

месяц должен быть от 1 до 12 (нулей впереди)

checkdate($month, $day, $year); как в checkdate(3, 27, 1977); не checkdate(03, 27, 1977);, поэтому в течение месяца вы должны использовать $month = date( 'n', $stamp );

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...