gpt4 book ai didi

php - 计算两个日期之间的天数

转载 作者:太空狗 更新时间:2023-10-29 15:38:23 25 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
How to find number of days between two dates using php

我不想知道怎么做。我想知道为什么它没有给出预期的结果。

我尝试计算格式为 YYYY-mm-dd 的两个日期之间的天数使用此代码:

$day1 = strtotime($_REQUEST['start']);
$day2 = strtotime($_REQUEST['end']);

$nbOfDays = $day2 - $day1;
$nbOfDays = ceil($nbOfDays/60/60/24);

echo $nbOfDays;

问题是当我计算 2012-12-01 和 2012-12-31 之间的差异时,它给了我 30 天(应该是 31)并且 2012-11-01 和 2012-11-30 之间的差异也是 30(这是正确的!)

为纯信息更新:

我不得不修改这段代码(感谢 Justin):

$day1 = new DateTime($_REQUEST['start']);
$day2 = new DateTime($_REQUEST['end']);
$interval = round(abs($day2->format('U') - $day1->format('U')) / (60*60*24));
echo $interval;

对于:

$day1 = new DateTime($_REQUEST['start']);
$day2 = new DateTime($_REQUEST['end']);
$nb1 = $day2->format('U');
$nb2 = $day1->format('U');
$interval = round(abs($nb1 - $nb2) / (60*60*24));
echo $interval;

因为

$day2->format('U') - $day1->format('U')

等于0

所以到最后,2012-12-31 和 2012-12-01 之间的差值仍然是 30。BUUUTTTT,2012-11-30 和 2012-11-01 之间的差值是 29,所以

echo $interval +1;

无论如何给出正确的天数!

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com