gpt4 book ai didi

PHP strtotime() 函数错了 1 小时?

转载 作者:IT老高 更新时间:2023-10-29 00:07:33 25 4
gpt4 key购买 nike

在将日期和时间插入我的 MySQL 数据库之前,我正在使用 PHP 将日期和时间转换为时间戳。

我的问题是,当我使用 PHP 的 strtotime 函数时,输出时间戳比我的实际时间晚 -1 小时。

例如,考虑到今天的日期:2010 年 7 月 21 日。当我使用 php 代码时:

<?php
$my_timestamp = strtotime("07/21/2010");
echo $my_timestamp;
?>

发回的时间戳是相当于 GMT 的 MINUS 1 小时。即我回来:2010 年 7 月 20 日 23:00:00 GMT 而不是 2010 年 7 月 21 日 00:00:00 GMT。

我住在英国,所以我的时区是 GMT。我已经使用 date_default_timezone_set('Europe/London') 在脚本中声明了我的时区,并且我还确保将 php.ini 文件设置为 'Europe/London'。

这可能与夏令时有关吗?如何在不将所有日期增加 1 小时的情况下解决问题?

最佳答案

在夏令时期间,欧洲/伦敦时间不是 GMT 时间。您需要将其设置为 UTC。

date_default_timezone_set('UTC');

<子>date_default_timezone_set('GMT'); 可能有效,但正如 Kenneth 在下面的评论中指出的那样,它已被弃用。

关于PHP strtotime() 函数错了 1 小时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3303970/

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