Подтверждение даты дд / мм / гггг - PullRequest
1 голос
/ 28 октября 2010

Кто-нибудь знает какие-либо хорошие функции для проверки даты через текстовое поле ввода в codeigniter, как это: дд / мм / гггг? Спасибо

Ответы [ 4 ]

2 голосов
/ 29 октября 2010

вы также можете использовать пользовательскую функцию обратного вызова

<?php

function valid_date($date)
{
    $date_format = 'd-m-Y'; /* use dashes - dd/mm/yyyy */

    $date = trim($date);
    /* UK dates and strtotime() don't work with slashes, 
    so just do a quick replace */
    $date = str_replace('/', '-', $date); 


    $time = strtotime($date);

    $is_valid = date($date_format, $time) == $date;

    if($is_valid)
    {
        return true;
    }

    /* not a valid date..return false */
    return false;
}
?>

ваше правило проверки выглядит так:

$rules['your_date_field'] = "callback_valid_date";

2 голосов
/ 28 октября 2010

Возможно, вы ищете функцию strptime. Для указанного формата вы можете использовать его так:

$result = strptime($input, '%d/%m/%Y');

$result будет либо false, если ввод неверен, либо в массиве с датой.

Или, если у вас Windows или у вас PHP> = 5.3, попробуйте использовать date_parse_from_format.

2 голосов
/ 29 октября 2010

Используйте функцию strtotime .

$date = strtotime($input);

возвращает false, если недействительно, или -1 для php4.

0 голосов
/ 28 октября 2010

не знаю о codeigniter, но уже есть кое-что похожее в php checkdate ();

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