所以我目前正在制作一个小型php应用程序,我需要比较两个日期以获取它们之间的天数。可悲的是我不能使用datediff(),因为php版本是5.2。
我已经搜索了怎么做,发现了很多答案,但是我总是遇到同样的问题。当我在两个日期之间进行区分时,结果总是为0。
function date_diff($dateFrom, $dateTo) {
echo $dateFrom->format('d-m-Y') . " : " . $dateTo->format('d-m-Y') . '<br/>';
$diff = abs($dateTo-$dateFrom);
return sprintf
(
"%d Days, %d Hours, %d Mins, %d Seconds",
intval( $diff / 86400 ),
intval( ( $diff % 86400 ) / 3600),
intval( ( $diff / 60 ) % 60 ),
intval( $diff % 60 )
);
}
我目前使用此功能,参数在这里:
while ($donnees = mysqli_fetch_array($res))
$date = new DateTime($donnees['Date']);
$date = date_create($date->format("Y-m-d"));
$today = new DateTime();
echo $utilDate->date_diff($date, $today);
我的$ date和$ today变量不是空的,所以我不明白为什么这段代码不起作用。有人有主意吗?
我认为$ dateTo和$ dateFrom是对象,并且您正在对它们进行减法 $diff = abs($dateTo-$dateFrom);
尝试 $diff = abs($dateTo->getTimestamp()-$dateFrom->getTimestamp());
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句