【发布时间】:2014-10-23 13:08:09
【问题描述】:
在股票市场应用程序中,我们发现了一个错误,即日变减去时间偏移时出现的错误。即对于我们的情况,它发生在服务器时间 00:00 到 02:00,我们正在花费时间 GMT+2。 php 在时间戳之外返回错误的日期值。例如昨天晚上 01:15 左右 php 返回 28/08/2014 即使实际日期是 29/08/2014。后来我发现 php 总是将时间戳视为日期的 GMT,所以当 MySQL 从时间戳返回正确的日期值时,php 不会。因此,该错误会出现一段时间。
我在互联网上搜索过它。有人提到了 php 的这种行为,但大多数情况下他们给出了在 php.ini 中更改 timezoen 的解决方案。但该解决方案不能在这里使用.. 有谁知道解决办法吗?
【问题讨论】:
-
您的 MySQL 实例和 PHP 服务器实例具有不同的时区,您需要通过将两者配置为相同的时区来纠正这一点,或者在代码中实施解决方案以适应差异。我建议前者。我通常只是将所有服务器配置设置为 GMT 并处理时区转换,以便在应用层显示。
标签: php mysql sql timezone gmt