gpt4 book ai didi

PHP date() 比 UNIX Epoch 少了一个小时

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:06:07 24 4
gpt4 key购买 nike

您好,我在使用 php date() 函数时遇到了一些奇怪的行为。我正在尝试像这样一次将日期增加一周。

代码:

<?php
date_default_timezone_set('Europe/London');
echo 7*24*60*60;
echo '<br>';
echo date('d/m/Y H:i:s', 0);
echo '<br>';
echo date('d/m/Y H:i:s', 604800);
?>

这会导致以下输出。

输出:

604800
01/01/1970 01:00:00
08/01/1970 01:00:00

如您所料,日期增加了 7 天到秒。但是在我达到一定秒数后,日期函数似乎将日期减少了一个小时。

代码:

<?php
date_default_timezone_set('Europe/London');
echo (1351468800 - 1350864000);
echo '<br>';
echo date('d/m/Y H:i:s', 1350864000);
echo '<br>';
echo date('d/m/Y H:i:s', 1351468800);
?>

结果如下输出

输出:

604800
22/10/2012 01:00:00
29/10/2012 00:00:00

如您所见,尽管这两个日期之间相差 604800 秒,但日期却少了一个小时。我已经在两个不同的服务器上对此进行了测试,并且还使用 DateTime 对象测试了类似的代码,但结果仍然相同。我哪里错了?

最佳答案

我相信夏令时在这里发挥作用。由于 DST 于 2012 年 10 月 28 日在伦敦结束。

关于PHP date() 比 UNIX Epoch 少了一个小时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12606274/

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