2012-07-14 62 views
5

我有以下時間戳:Linux的時間戳PHP

1342259667654 

當與http://www.epochconverter.com/換算得出:

Assuming that this timestamp is in milliseconds: 
GMT: Sat, 14 Jul 2012 09:54:27 GMT 
Your time zone: 14. juli 2012 11:54:27 GMT+2 

這是正確的時間,但使用時:

echo date("Y-m-d H:i:s", 1342259667654); 

我得到以下日期:

1904-07-24 10:22:47 

如何使用PHP獲取此時間戳的確切日期?

+0

你想要當前日期還是什麼? – 2012-07-14 19:56:16

+0

只刪除最後3個字符給了我正確的結果?即1342259667 – SmokeyPHP 2012-07-14 19:56:30

+4

DERP ...因爲時間戳是毫秒,PHP日期()使用秒數,所以你需要除以1000 – SmokeyPHP 2012-07-14 19:57:29

回答

6

你的時間戳需要由1000可分爲:

echo date("Y-m-d H:i:s", 1342259667654/1000); 
+0

謝謝@davidethell,錯過了那部分。 – Adnan 2012-07-14 19:59:04

0

1342259667654其實就是以毫秒爲單位,而PHP的date()功能無法處理毫秒值。因此怪異的輸出。

2
$timestamp = 1342259667; 
$dt = new DateTime("@$timestamp"); // convert UNIX timestamp to PHP DateTime 
echo $dt->format('Y-m-d H:i:s'); 

你也可以這樣做。