处理本地和远程服务器中时区的差异

时间:2015-02-21 11:21:27

标签: php mysql date datetime timezone

假设我的本地服务器(A)时钟位于18/2/2015 00:01:00(GMT +8)

A在unix时间内发送了包含参数start_timeend_time的api请求。例如。 1424131200(2015年2月17日00:00:00)和1424217599(17/2/2015 23:59:59)。

远程服务器(B)在unixtime中存储了一个名为created_at的时间戳列,这意味着根据B的时区时钟设置解释时区(?)

现在,B应该使用相同的时区按原样读取timestamp参数。但是,我注意到B错误地查询了它。在谷歌搜索解决方案后,我发现因为B使用UTC作为其时区。这意味着B中的时钟比A晚8小时。

因此,它不会在17/2/2015 @ 12am之前查询17/2/2015 @ 11.59pm,而是在17/2/2015 @ 12am之前查询17/2/2015 @ 3.59pm。注意结束时间,晚上11.59和下午3.59之间的差异? 8个小时的差异。

我猜B的时钟在api请求时的A时钟后总是落后8小时,即17/2/2015 16:01:00。因此,查询结果总是返回错误的信息。如果api请求与远程服务器同时执行,那将没有问题。

我不知道如何解释这一点,但是这个问题让我很头疼同步它。我该如何处理这个问题?我似乎无法找到任何解释。在mysql服务器中使用unix时间戳是最佳做法吗?

0 个答案:

没有答案