2013-05-15 106 views
0

我在表messages中查詢字段created的時間戳。 我的數據庫表目前爲作爲..在PHP中查詢MySQL時間戳

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 
| msg_id | messages | uid_fk | ip | created | uploads | 
| 706 | ........ | 39 | .. | 1368631445 | 0 | 
| 717 | ........ | 39 | .. | 1368640802 | 0 | 
| 705 | ........ | 39 | .. | 1368631238 | 0 | 
| 696 | ........ | 39 | .. | 1368595705 | 0 | 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 

這是怎麼了,我從created查詢時間戳。

public function Time_Stamp($uid){ 
    $res = mysql_query("SELECT created FROM messages WHERE uid_fk='$uid'"); 
    while ($row = mysql_fetch_array($res)) { 
     echo date("g:i", strtotime($row["created"])) . "<br />"; 
    } 
} 

----- -----輸出

  1. 9:00
  2. 9:00
  3. 9:00
  4. 9:00 所以基本上只是印刷同時列入清單。

這不是從created字段打印它們的獨特時間。我對MySQL並不是很完美,但它也適用於其獨特的iD(或者是msg_id,uid_fk),$ uid等於uid_fk,$ uid在另一個表中定義。

我該如何着手讓他們的特定iD打印出正確的時間戳。

回答

1
echo date("g:i", $row["created"]); 

strtotime變成一個日期字符串2013-05-15 22:35:00時間戳
date時間戳變成可讀的日期字符串
您已在數據庫中有時間戳,請勿使用strtotime

+0

感嘆,如此簡單我很感激! 什麼是使用strtotime的好方法?或者哪裏會是最正確的地方使用它? – iBrazilian2

+1

有兩種(常用)可能的日期表示法:數字時間戳和標準化格式,如「2013-05-15 22:35:00」。在數字時間戳上做數學很容易,並且讀取日期字符串更容易。根據需要使用'date'和'strtotime'來將其轉換成另一個。 – deceze

+0

太好了,現在我明白了!感謝您的幫助。 – iBrazilian2