2009-12-31 160 views
4

我想獲取ISO8601格式(例如2009年12月31日,02:53)中的服務器或客戶端的當前日期/時間戳。我知道使用PHP可以觀察到服務器時間,並使用jQuery $ .getJson將其帶入DOM。客戶端時間可以使用JavaScript/jQuery從瀏覽器記錄。我希望時間戳是靜態的(不是動態的/實時的)。我的PHP/JS新手,將不勝感激您的幫助。謝謝。獲取當前ISO8601日期/時間戳

+4

你在ISO 8601例如格式將是2009-12-31T02:53 – 2009-12-31 20:23:38

回答

7

對於JavaScript只需要創建一個新的Date對象這樣

var currentDate = new Date(); 

,然後你可以構建你的日期在你想使用Date提供方法的任何格式。請參閱this reference以瞭解您可以使用的完整方法列表。

在你的情況,你可以做這樣的事情:

var months = Array('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'); 

var currentDate = new Date(); 
var formatedDate = currentDate.getDate() + ' ' + months[currentDate.getMonth()] + ' ' + currentDate.getFullYear() + ' ' + currentDate.getHours() + ':' + currentDate.getMinutes(); 

至於PHP是如此簡單:

$formatedDate = date("c"); 

有關Date()功能完整的參考見this page

+1

在PHP中,日期( 「ĴMYH:我」 )生成格式化爲「2012年8月21日23:48」的日期字符串。這當然不是提問者所要求的ISO8601格式。 ISO8601格式可以用簡單的日期(「c」)來實現。 - @MagicMushroom – 2012-08-21 23:56:52

15

在PHP 5中,你可以做

date("c"); // ISO 8601 date (added in PHP 5) 

看到date