2010-08-14 56 views
1

我试图同步PHP脚本和一些JavaScript代码之间的时区。获取JavaScript和PHP的时区全部混合起来

我想要一个返回UTC时间戳的PHP函数。 gmmktime()做到了吗?

在JavaScript端,我有:

var real_date = new Date(); 
real_date -= real_date.getTimezoneOffset() * 60000; 
real_date /= 1000; 

这是否时间戳转换为UTC?

回答

5

PHP

只是time()会做你想要什么。如果你想要一个任意时间戳,而不是当前时间,那么gmmktime会这样做,是的。

返回自Unix 历元(1970年1月1日00:00:00 GMT)在 测量的秒数当前时间。

http://www.php.net/manual/en/function.time.php

的Javascript

您可以使用Date对象的.UTC()方法来获取毫秒#在UTC。但是,如果您从时间戳开始,那么您当前的解决方案也应该有效。

+0

感谢。所以只需确认... PHP中的time()与时区无关? – 2010-08-14 18:50:30

+0

是的。 'time()'总是返回UTC时间戳。 – Amber 2010-08-14 19:01:57

0

您可以使用time()

对于JavaScript的问题UTC

+0

为什么不只是'$ utc =(int)gmdate('U');'?呃,或者只是'time()'... – eyelidlessness 2010-08-14 18:21:20

+0

其实gmdate返回格林威治标准时间,我错了,我会编辑它。 – dierre 2010-08-14 18:33:29

+0

FWIW,除非您担心准确度下降到小数秒(如果您是,您可能没有使用PHP),GMT和UTC应该是等效的。 – eyelidlessness 2010-08-14 18:48:28