2010-08-14 57 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