用于比较日期和时间的PHP日期格式?

时间:2011-11-02 22:45:00

标签: php date

我想知道php可以在以后与其他日期比较的最佳日期和时间格式是什么?

我正在尝试做3件事。获取日期和时间,将24小时添加到日期和时间,然后将该数字与当前日期和时间进行比较,以验证t未达到24小时。

//GET CURRENT DATE AND TIME
$date = date('m/d/Y h:i:s a', time());
//ADD 24 HOURS
$end_date = $date + 24;

//LATER COMPARE THE CURRENT DATE AND TIME TO MY END_DATE
if (date('m/d/Y h:i:s a', time()) > $end_date){
ehco "YOU ARE PAST YOUR TIME";
}else{
echo "still time left";
}

4 个答案:

答案 0 :(得分:1)

为什么不将时间解析为时间戳,然后进行比较。有一个名为strtotime()

的神奇功能

答案 1 :(得分:1)

我建议使用unix时间戳,你可以像这样添加24小时:

$date = time();
$endDate = mktime(0, 0, 0, date('m'), date('d') + 1, date('Y'));
//LATER COMPARE THE CURRENT DATE AND TIME TO MY END_DATE
if ($date > $endDate) {
    ehco "YOU ARE PAST YOUR TIME";
} else {
    echo "still time left";
} 

通过使用时间戳,只需要比较两个整数,看看哪一个大于另一个。

答案 2 :(得分:1)

// now + 1 day (24h)
$end_date = strtotime("+1 day");


    //LATER COMPARE THE CURRENT DATE AND TIME TO MY END_DATE
    if (strtotime("now") > $end_date){
    ehco "YOU ARE PAST YOUR TIME";
    }else{
    echo "still time left";
    }

您可以看到参考strtotime

如果需要以可读格式打印值,可以使用函数DATE

date("d-m-Y h:i:s",$end_date);

答案 3 :(得分:0)

如果您使用ISO标准日期时间,它们将按字母顺序排序。 E.g:

date("Y-m-d H:i:s", $timestamp);