2014-10-11 7 views
0

Создайте веб-приложение, где администратор должен знать, что заявители заявили, что срок их действия истек. Мне нужно сравнить текущую дату со своей датой истечения срока действия, которую я исправлю из базы данных. Я попытался использовать функцию date_diff(), но проблема с date_diff() заключается в том, что если у меня есть дата, такая как 2014-02-31, как дата истечения срока действия, и у меня есть 2014-03-01, то сегодняшний день выше истечения срока действия date: поэтому срок действия приложения истек. Но функция, похоже, возвращает то же значение, когда дата одинаково больше или меньше.Вычислить разницу между двумя датами как знаковое значение

Вот моя функция

function CheckStatus($date) 
{ 
    $date1 = new DateTime(date('Y-m-d')); 
    $date2 = new DateTime($date); 

    $interval = $date1->diff($date2); 

    return $interval->format('%a'); 
} 

просто пытаюсь узнать, если дата сегодняшнюю больше срока годности, чтобы знать то я знаю, что заявитель истек.

Любая помощь будет назначена. Заранее спасибо

только что получил этот пример на PHP документ:

function CheckStatus($date) 
{ 
//if expiry date is less than todays date 
//then enrollee expired 
    $date1 = new DateTime(date('Y-m-d')); 
    $date2 = new DateTime($date); 

    if($date1 > $date2) 
    { 
     echo '<span class="label-default label label-danger">expired</span>'; 
    } 
    if($date1 < $date2) 
    { 
     echo '<span class="label-default label label-info">Running</span>'; 
    } 
} 

ли кто-то думает, я бы работать в каких-либо проблем с этим; возможно, позднее

ответ

0
// assuming $date is a valid date string 
function isExpired($date) { 
    return time() > strtotime($date); 
} 
0

Дата_дифф принимает ключевое слово arg "absolute". Установите для этого значение значение false, чтобы получить результат, который вы ищете.

Обратите внимание, что date_diff и $ date-> diff - это псевдонимы одной и той же функции!

Редактировать: ссылка на документы для удобства: http://php.net/manual/en/datetime.diff.php

Смежные вопросы