2010-10-02 26 views
0

我在mysql中輸入時間並輸入HH:MM格式的時間。這存儲在數據庫中HH:MM:00。如何在PHP/MySql中更改08:00:00至08:00

現在,當我顯示時,它也顯示秒。

我只想顯示小時和分鐘。

在十三點20分00秒代替,顯示出13:20等

什麼是做到這一點的最好辦法。

我可以使用substr($ time,0,5),但我想知道是否有更好的方法來做到這一點。

在此先感謝。

回答

1

我認爲它保存在TIME類型的DB列中。在這種情況下,解決它在您的查詢:

SELECT TIME_FORMAT(yourfield, '%H:%i') FROM table; 
1
SELECT DATE_FORMAT(timefield,'%H:%i'); 
+0

錯誤的參數順序,廣告我覺得TIME_FORMAT更適合。 – 2010-10-02 11:48:54

+0

啊,修好了訂單。而'time_format'是恕我直言,只有在超過23小時的標記時纔有用(即,您顯示的是時間_amount_,而不是time_中的_point)。 – Wrikken 2010-10-02 11:56:35

1

信,

考慮到你有datbase一個固定長度的字符串,你已經在使用的最佳方法格式化您的時間(SUBSTR)。這使您對計算能力的要求最低。

但是,如果您擔心您的代碼優雅,並且如果字符串不是固定長度(如9:31:02而不是09:31:02),則可以使用以下代碼:

$hours = strtok($dbTime, ':'); 
$minutes = strtok(':'); 
$formattedTime = $hours . ':' . $minutes 

我希望這有助於 斯拉夫