PHP日期之间

时间:2012-02-19 02:37:48

标签: php date

需要使用PHP检查给定日期是否在两个给定日期之间,这是我写的代码:

$today = date_create('28-Feb-2012');
$fromdate = date_create('20-Feb-2012');
$todate = date_create('22-Feb-2012'); 
if ($today>=$fromdate && $todat<=$todate)
{
    echo 'in range';
}
else
{
    echo 'not in range';
}

但这总是会返回in range。无法弄清问题在哪里。请帮忙。

1 个答案:

答案 0 :(得分:5)

我知道这是一个hacky解决方案,但我倾向于使用strtotime()来做这种事情,因为它返回一个整数:

$today = time();
$fromdate = strtotime('20-Feb-2012');
$todate = strtotime('22-Feb-2012'); 
if ($today>=$fromdate && $today<=$todate)
{
    echo 'in range';
}
else
{
    echo 'not in range';
}

编辑:我认为$todat只是堆栈溢出的错误,而你的代码实际上有$today,但如果不是那可能是你的问题 - 未定义的变量,在某些情况下,可以认为是0我相信。