我有以下代码:

$dStart = new DateTime('2013-03-15');
$dEnd = new DateTime('2013-04-01');
$dDiff = $dStart->diff($dEnd);
echo $dDiff->days;

我不知道为什么我会得到6015。

最佳答案

尝试像

$dStart = strtotime('2013-03-15');
$dEnd = strtotime('2013-04-01');
$dDiff = $dEnd - $dStart;
echo date('H:i:s',$dDiff);

或根据您的代码尝试
$dDiff = $dStart->diff($dEnd);
$date->format('d',$dDiff);
echo $dDiff->days;

如果您想在几天之内尝试一下,也可以尝试一下
echo floor($dDiff/(60*60*24));

10-05 20:33