2013-07-01 127 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

相关问题