現在有一個mysql資料庫的表裡有一個duration欄位,裡面有三條記錄:
00:22:32
13:42:21
134:42:21
表示的是時長,但是,儲存型別是文字。
現在要求,用php如何將這些記錄進行累加,最後顯示為一個總時長為秒鐘的結果?
複製程式碼 程式碼如下:
//連線資料庫... 略
$total = 0; //總秒數
$sql = "select duration from test";
$rs = mysql_query($sql);
while($row = mysql_fetch_array($rs))
{
$arr=explode(":",$row[duration]);
$h = $arr[0]*60*60;
$m = $arr[1]*60;
$s = $arr[2];
$total = $h+$m+$s;
}
echo $total;
這裡主要是查詢出資料,然後使用explode函式,以“:”分割字串,得到一個陣列。
然後分別算出小時對應的秒數,分鐘對應的秒數。然後和把這些秒數加起來。
最後得到總秒數。