比较DateTime不工作


Comparing DateTime Not Working

我创建了两个日期时间对象,其中$date1=2013年2月9日,$date2=2014年2月3日

当我运行以下代码时:

if ($date2 < $date1)
{
  echo "hi";
}

由于某种原因,它的回声是"hi",尽管$date2明显大于$date1。我该如何比较这两个日期?请帮忙!

<?php
$date1 = new DateTime ('2013-12-25');
$date2 = new DateTime ('2014-11-24');
if ($date1 > $date2) {
echo ('date1 is greater than date2');
}
else {
echo ('date2 is greater than date1');
}

使用下面的函数http://php.net/manual/en/function.strtotime.php

if (strtotime($date2 ) < strtotime($date1))
{
 echo "hi";
}

希望这对你有帮助。

这在JavaScript中可以工作,但在PHP中不行:p

但是,您可以计算日期之间的间隔。

$interval = $date1->diff($date2);
if ($interval->invert){ //1 if negative and 0 if positive
  // $date2 has a bigger time value
} else {
  // $date1 has a bigger time value
}