2011-12-26 60 views
0

我試圖PHP時間戳轉換爲JavaScript的時間或日期(基本上做到2倍之間的差異,並發現它在幾秒鐘內)PHP時間戳JavaScript的時間或日期

我得到從PHP如下時間戳:

2011-12-26 17:27:37 

我試圖做上述時間戳在JavaScript中的差異和當前的時間和要打印的時間中DIFF秒..

,如:

CurrentTimeInJavaScript - JavaScriptConvertedTime(2011-12-26 17點27分37秒)

編輯

或怎麼做,我們可以在javascript時間戳電流/系統時間?

new Date().getTime()從預期的1970年開始!

我希望它在說20111226180000 for 2011 Dec 26 6 PM

回答

0

你日期的格式似乎還好

,你應該能夠直接傳遞到日期構造

var d = new Date('2011-12-26 17:27:37'); 

後您可以通過在日期對象上使用getTime方法來比較時間戳。

+1

此外,請確保你知道你在什麼時區。 – blockhead

+0

@RageZ:我害怕,它不工作。 我越來越2011-12-26 17:27:37通過從服務器的JSON響應,我將它存儲在js中的tm變量.. var tm = response.time; 當我做新日期(tm) - >給出無效日期 –

1

在JS中創建兩個Date對象;當前日期(new Date)之一,你的服務器的時間一(通過服務器的時間,例如new Date('date string')

然後得到的差異。

var diff = +date1 - +date2; 
0

那麼首先2011-12-26 17:27:37的是不是一個時間戳。您可以將其轉換成一個時間戳和strtotime

下一個要注意的是,JavaScript的時間戳是毫秒,所以你必須用1000乘以它可以在javascript中的時間戳,您使用Date.getTime()

全部放在一起:

new Date().getTime() - new Date(<?php echo json_encode(strtotime(2011-12-26 17:27:37))?>);

1

,而不是整個字符串時間格式,使用PHP的date()函數的輸出,這僅僅是自午夜UTC通過對1970年1月1日的秒數。

Javascript時間格式相同,但乘以1000,因爲它具有毫秒分辨率。