Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 计算日数时出错(?)_Php_Date_Datetime_Date Math - Fatal编程技术网

Php 计算日数时出错(?)

Php 计算日数时出错(?),php,date,datetime,date-math,Php,Date,Datetime,Date Math,为什么答案是7304而不是7300,因为我试图计算20年的天数 请提供帮助。为此使用日期时间: <?php $date1 = "2002-1-1"; $date2 = "2021-12-31"; $deff = abs(strtotime($date2) - strtotime($date1)); $daycount = $deff / (60 * 60 * 24); echo $daycount; ?> 参考 您忘记了闰年。您的代码是正确的。这两天之间有多少天。别忘了闰年

为什么答案是7304而不是7300,因为我试图计算20年的天数

请提供帮助。

为此使用日期时间:

<?php
$date1 = "2002-1-1";
$date2 = "2021-12-31";
$deff = abs(strtotime($date2) - strtotime($date1));
$daycount = $deff / (60 * 60 * 24);
echo $daycount;
?>

参考


    • 您忘记了闰年。

      您的代码是正确的。这两天之间有多少天。别忘了闰年。

      老兄,答案是:

      自2002年1月1日星期二起(含)

      至但不包括:2021年12月31日星期五

      从开始日期到结束日期为7304天,但不包括结束日期


      您忘记添加闰年。这是额外的四天

      在这段时间里不是有4个闰日吗?包括闰年吗?7304是正确的答案,我用sql中的datediff进行了检查:)谢谢朋友们。是的,问题在于闰日。有没有办法在不进行后期操作的情况下精确获得7300?我的意思是不算闰日。我想这意味着输出是正确的。对不起,约翰·康德先生。它仍然返回7304天。
      $datetime1 = new DateTime("2002-1-1");
      $datetime2 = new DateTime("2021-12-31");
      $interval  = $datetime1->diff($datetime2);
      $elapsed   = $interval->format('%a days');
      echo $elapsed;