PHP检测指定日期和now()之间是否匹配指定条件

时间:2016-06-06 09:54:22

标签: php date datetime

我想知道如何检测日期范围是否符合指定条件:

预期结果:

-[NSScrollView setBorderType:]

(因为我认为这个问题的格式/格式不正确,请纠正我的问题)

谢谢!

2 个答案:

答案 0 :(得分:0)

您可以使用DateTime。

function is_date_range_exceeds_3_months($strDate)
{

    $userDate = new \DateTime($strDate); // @todo: Check if is valid
    $checkDate = new \DateTime(); // By default date seed is now
    $checkDate->modify('+3 months'); // Set period

    if($userDate > $checkDate) {
        return true;
    } else {
        return false;
    }

}

这只是一个提示,对不起,如果它包含一些拼写错误。

OP编辑:

function is_date_range_exceeds_x_months($month_limiter, $start_date) {
    $userDate = new DateTime($start_date); // @todo: Check if is valid
    $userDate = $userDate->format('Y-m-d H:i:s');

    $checkDate = new DateTime(); // By default date seed is now
    $checkDate->modify('-' . $month_limiter . ' months'); // Set period
    $checkDate = $checkDate->format('Y-m-d H:i:s');


    if ($userDate < $checkDate) {
        return true;
    } else {
        return false;
    }
}

答案 1 :(得分:0)

<?php
$start_date1 = '2016-05-06 00:00:00';
$start_date2 = '2016-01-06 00:00:00';

$result1 = is_date_range_exceeds_3_months($start_date1);
$result2 = is_date_range_exceeds_3_months($start_date2);
//lets say 'now' is '2016-06-06 00:00:00'

function is_date_range_exceeds_3_months($start_date)
{
    $lastdates=date('Y-m-d H:i:s', strtotime('-3 month'));
    $current_dates=date("Y-m-d H:i:s");
   echo 'currentdate'.$current_dates.'<br/>';
   echo 'Lasytdate'.$lastdates.'<br/>';

    if (($start_date > $lastdates) && ($start_date < $current_dates))
    {
      return true;
    }
    else
    {
      return false;
    }   

}
//Expected result of $result1 = false
//Expected result of $result2 = true
?>