2013-05-13 38 views
14

我的日期格式是這樣轉換日期至Tž格式

2013-05-07 18:56:57 (yyyy-MM-dd hh:mm:ss) 

我想要的輸出如下。

2013-05-07T06:17:55.827Z 

有沒有簡單的方法比使用大功能?

回答

8

這應該給在Z(ULU)時區的正確ISO8601日期/時間:

str_replace('+00:00', 'Z', gmdate('c')) 

要執行日期轉換:

str_replace('+00:00', 'Z', gmdate('c', strtotime('2013-05-07 18:56:57'))) 

要讓附加.000(這是無用IMHO ):

str_replace('+00:00', '.000Z', gmdate('c', strtotime('2013-05-07 18:56:57'))) 
+0

我應該在哪裏通過我的約會? – sandy 2013-05-13 06:45:14

+0

@sandy這是'gmdate()'的第二個參數。 – 2013-05-13 06:45:36

+0

我試過它沒有工作..我試過這樣str_replace('+ 00:00','Z',gmdate('c','2013-05-07 18:56:57')); – sandy 2013-05-13 06:46:14

19

試試這個:

date("Y-m-d\TH:i:s.000\Z", strtotime("2013-05-07 18:56:57")); 
+0

我可以讓.000動態嗎? – sandy 2013-05-13 06:49:55

+0

「Z」後綴的全部概念是日期表示爲UTC; 'date()'不會這樣做,因爲它考慮到了本地時區。 – 2013-05-13 06:51:21

+0

默認的php數據不包含毫秒,但如果你使用當前日期,你可以使用microtime()函數來獲取它 – Eugene 2013-05-13 08:07:44