2011-03-26 -6ren">
gpt4 book ai didi

php - 2011 年 3 月显示日期时出错

转载 作者:行者123 更新时间:2023-12-04 06:02:45 25 4
gpt4 key购买 nike

$startDay = "2011-03-31"; 

for($i=0; $i<6; $i++)
{
$startDaysArr[] = date("Y-m-d", strtotime($startDay) - 3600*24*$i);

}

$startDaysArr = array_reverse($startDaysArr, FALSE);

多至 时钟向前移动一小时 2011-03-27 ,所以 $startDay = "2011-03-31 00:00:00" 时输出不正确运行上述代码后。

从下面的结果可以看出,2011-03-27 丢失了。有没有人可以帮助我?非常感谢您的帮助。

-----输出时 $startDaysArr = "2011-03-31 00:00:00"----
Array                           //Correct One:
(
[25] => 2011-03-25 // 2011-03-26
[26] => 2011-03-26 // 2011-03-27
[27] => 2011-03-28 // 2011-03-28
[28] => 2011-03-29 // 2011-03-29
[29] => 2011-03-30 // 2011-03-30
[30] => 2011-03-31 // 2011-03-31
)

最佳答案

从中午而不是午夜开始工作:

$startDay = "2011-03-31";
$currDay = $startDay;
for($i = 0; $i < 6; $i++) {
$startDaysArr[] = $currDay;
$currDay = date ("Y-m-d", strtotime ($currDay . " 11:59") - 3600 * 24 * $i);
}

这样,一个小时左右的变化将没有任何影响。事实上,您只存储日期组件,并将其与 11:59 的时间结合使用。 , 意味着减去 24 小时应该是安全的(没有累积错误)。

关于php - 2011 年 3 月显示日期时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8757092/

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