如何在各个国家保持时间戳

时间:2012-02-02 08:17:59

标签: php javascript

我的时间戳有问题。让我告诉你,假设一位用户在美国上午4点30分上传了一张照片,如果另一位用户在日本看到这张照片。它会显示在上午4点30分,因为数据库中保存的日期是4.30我应该是下午4点30分给日本人,因为他们比美国快12个小时。

所以我想用php来获取当前的服务器时间让我们说它是a并且还得到用户使用javascript函数的当前时间,说它是b,然后找出{之间的差异{1}}和b,该结果应添加到数据库中存储的日期。

所以服务器可能会显示早上4点半,而js功能会在下午4点30分给出12小时的差异,所以这12小时应该添加到数据库中保存的日期。这就是我想做的但是我不确定是否有任何内置插件在执行任务时因为每个站点都将使用这种类型的功能,可能是他们可能正在使用某些开源代码。

还有其他更好的解决方案吗?如果还有其他办法,请告诉我?我的算法是对的吗?我认为有点时间消耗差异并将所有帖子添加到所有帖子中只需要很少的时间,但请让我知道。非常感谢。非常感谢。谢谢

3 个答案:

答案 0 :(得分:3)

将所有时间戳存储为UTC。然后,对于用户界面,对用户进行特定时区的校正。如有必要,您还可以考虑节省日光

答案 1 :(得分:1)

您可以在上传时查看GMT + 0的时间,然后在下载时转换为当地时间。这解释了时区:http://hutch120.blogspot.com.au/2008/03/php-timezones-explained.html

答案 2 :(得分:0)

我更喜欢将所有本地时间转换为服务器时间,并将数据库中的日期保存在一个时区中。这有助于进行计算。我还保留有关原始条目的时区信息,您可以使用客户端的首选时区进行用户设置,并在他们想要的任何时区显示时间。