微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Java时间戳和PHP时间戳给出了两个不同的时间

好吧,我似乎无法弄清楚发生了什么,所以我决定问你们.在PHP中,我使用以下代码获取UTC时间戳:

date_default_timezone_set("UTC");
time()

这将例如给我1331065202

然后我用Java中的代码获取UTC时间戳:

long timestamp = System.currentTimeMillis() / 1000;

这将例如给我1331093502

为什么2次如此不同?它们不应该是UTC时区还是我做错了什么?我在VPS上托管,这些文章在2个不同的服务器上,所以它可能是服务器端的东西,如果是这样,我该怎么办?

解决方法:

鉴于这两个值完全不同(甚至不是整数小时),我会说其中一台机器上的时钟是错误的. (我假设您在几乎同时拍摄了两个时间戳.)

那些时间戳是:

> PHP:Tue Mar 06 20:20:02 GMT 2012
> Java:Wed Mar 07 04:11:42 GMT 2012

鉴于GMT不是3月27日,看起来Java机器上的时钟设置不正确.

如果它是您完全控制的真正VPS,您应该考虑使用NTP或类似的东西来保持服务器的时钟正确.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐