gpt4 book ai didi

php - 处理日期

转载 作者:行者123 更新时间:2023-11-29 05:46:53 24 4
gpt4 key购买 nike

所以基本上我在 mysql 表中存储了一堆日历事件。我存储了它们应该发生在星期几以及时间。现在,时间存储为以 GMT 计算的从午夜算起的秒数。但是当我让人们登录并查看日历并且他们来自格林威治标准时间以外的不同时区时,我在计算他们所在时区当天的哪些事件时遇到了问题。有什么建议吗?

最佳答案

当您处理时区时,您不想自己进行偏移量计算,尤其是当您处理小于 1 天的时间单位时。一个简单的原因:夏令时。

MySQL 和 PHP 都有大量的日期/时间函数来处理日期。他们知道夏令时和其他移动日期和时间的怪癖。如果您尝试手动解决方案,他们会比您更经常地得到正确答案。至少,使用(或创建)包含时区的日期对象。不幸的是,PHP 函数可能有点棘手,而且没有很好的文档记录,但是所有功能都在那里。您仍然可以使用 unix 时间戳作为您的“规范”格式,但使用它的所有代码都必须知道或理解它“处于”哪个时区。

在过去的一份工作中,我不得不处理学校时间表并将该格式(学期、周、日、期间...)与实际日期进行转换。我们构建了一个对象,它可以根据需要进行任何必要的转换并缓存结果。这是一项努力,但是让 PHP 日期函数执行所有转换和调整可以避免很多时区和夏令时的问题。

关于日历的另一个警告:您可能必须区分事件 的时区和用户 的时区。当事件的时区保持固定并且随着用户的时区移动时。未能处理所有细微差别是 Exchange/Outlook 中的日历仍然存在夏令时更改问题的原因。 :-)

关于php - 处理日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/534334/

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