实际上我有 2 个 DateTime 对象
$d1 = new DateTime('04/14/2013 8.00 AM');
$d2 = new DateTime('04/14/2013');
因此无需对这两个对象进行任何更改。是否可能等于这两个对象。
实际上我有 2 个 DateTime 对象
$d1 = new DateTime('04/14/2013 8.00 AM');
$d2 = new DateTime('04/14/2013');
因此无需对这两个对象进行任何更改。是否可能等于这两个对象。
要获取两个 DateTime 对象之间的差异,请使用 DateTime::diff() 方法:
$interval = $d1->diff($d2);
结果,您将获得一个 DateInterval 对象。要从 DateInterval 对象获取格式化的时差,请使用 format() 方法,例如:
echo $interval->format('%s seconds');
您可以在此处查看更多比较 DateTime 对象的示例。还要检查如何使用 format() 方法。
是的,您可以对 DateTime 对象使用内置的 diff 方法;
$interval = $d1->diff($2);
这是它的手册:DateTime::diff
然后为了得到你可以像这样格式化间隔的天数
$interval = $interval->format('%d');
您可以格式化日期以剥离时间,例如:
if ($d1->format('m/d/Y') == $d2->format('m/d/Y'))
echo 'equal';
else
echo 'not equal';
或像这样:
if (date_format($d1, 'm/d/Y') == date_format($d2, 'm/d/Y'))
echo 'equal';
else
echo 'not equal';
date_format 会将日期设置为以下格式:04/14/2013
您必须在 $d2 上执行 date_format,因为它实际上是“2013-04-14 00:00:00”。