2013-07-01 160 views
2

我需要將小時:分鐘:秒轉換爲(例如00:02:05 = 125秒)。有沒有在PHP的功能建立這個或需要做一些數學?php - 轉換小時:分鐘:秒。秒

+0

的DateInterval類可悲的是有沒有的功能,所以你必須要做數學 – x4rf41

+0

問題必須證明對所解決問題的最小理解。告訴我們你試圖去做什麼,爲什麼它沒有工作,以及它應該如何工作。另見:[Stack Overflow question checklist](http://meta.stackexchange.com/questions/156810/stack-overflow-question-checklist) – Kermit

+0

這種格式是基於24小時還是24小時可以運行,例如: '42:12:02'? –

回答

1

可能有些東西在DateTime class。但沒有單一的方法。另外,您需要將格式轉換爲日期時間對象,然後再返回。

是微不足道的編寫自己:

function toSeconds($hours, $minutes, $seconds) { 
    return ($hours * 3600) + ($minutes * 60) + $seconds; 
} 
5

您可以嘗試使用

strtotime('00:02:05') - strtotime('today'); //125 

Demo

+0

我不相信這是用戶所要求的。 –

+1

它把他的字符串作爲參數,並返回秒,就像他問。那麼,它取決於他。 –

+0

也許,只要格式不能是'42:12:02'。這是*假設它是基於24小時制的。 –

2

strtotime可能會有幫助。 Documentation

另外,

<?php 
$parts = explode(":", $my_str_time); //if you know its safe 
$answer = ($parts[0] * 60 * 60 + $parts[1] * 60 + $parts[2]) . "s"; 
3

您可以使用explode函數在PHP中:

function seconds($time){ 
$time = explode(':', $time); 
return ($time[0]*3600) + ($time[1]*60) + $time[2]; 
} 

例子:http://codepad.org/gAjZGtq3

相關問題