时间戳,时区和夏令时

我有一个庞大的中央MySQL数据库。 到目前为止,我一直在使用unix时间戳存储日期/时间。</ p>

这一切都工作正常,直到几个月前,突然发现大量数据被检索到 从数据库中失踪了。 我检查了数据库,它就在那里,没有改变。 </ p>

我创建的应用程序精确到秒,当白天节省成本时,它通过我的应用程序关闭3599秒(一小时3600秒)</ p>

我正试图绕过时区/日光节省等等,并努力略微理解这些概念!! </ p>

我的所有PHP文件都设置为 欧洲/伦敦</ code>时区。 我的数据库中的所有日期,时间等都存储为unix时间戳(整数)。</ p>

我应该将所有时间戳转换为datetime()字段类型吗? 或者有没有办法避免白天节省? 如果我切换到UTC,我是否需要调整任何时间戳?</ p>

非常感谢任何建议。</ p>
</ div>

展开原文

原文

I've got quite a large central MySQL database. Up till now, I've been using unix timestamps to store dates / times.

This all worked fine up until a few months back, when all of a sudden lots of data which is retrieved from the database went missing. I checked the database, and it was all there, unaltered.

The applications I created are precise down to the second, and when daylights savings took over, it through my application off by 3599 seconds (3600 seconds in an hour)

I'm trying to get my head around timezones / daylights savings etc and struggling to understand the concepts slightly!!

All my PHP files are set to the Europe/London timezone. All dates, times etc in my database are stored as unix timestamps (integers).

Should I convert all the timestamps to the datetime() field type? Or is there a way to avoid daylights savings? If I switch to UTC, will I need to adjust any of the timestamps?

Any advice is greatly appreciated.

dsdukbc60905239
dsdukbc60905239 可能重复夏令时和时区的最佳做法
接近 7 年之前 回复

1个回答



您可以保持数据库中的unix时间戳不变。 </ p>

您的应用程序正在将检索到的时间更改为服务器时间,在您的情况下为欧洲/伦敦,如您所知,它实现了DST。</ p>

将服务器设置为UTC并开始使用 DateTime 类以避免将来出现这些问题。</ p> \ n

还要确保设置默认值 php.ini 中的UTC时区</ p>
</ div>

展开原文

原文

You can keep your unix timestamps in your database unaltered.

It is your application which is changing the retrieved times to server time, Europe/London in your case, which implements DST as you are aware.

Set your server to UTC and start using the DateTime classes to avoid these problems in the future.

Also make sure to set your default timezone to UTC in php.ini

doushou5761
doushou5761 感谢您的回复@vascowhite。 我之前检查过原始帖子评论中发布的链接,但只是简单地说。 不幸的是,我似乎无法绕过时代! 我将研究DateTime类。
接近 7 年之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐