我怎样才能转换时间' 60:02'到' 00:02'使用PHP?

时间:2017-07-18 04:58:16

标签: php mysql

我有一个特殊要求,需要对时间列进行求和,但是很少有记录和时间即将来临' 08:60:02'所以我需要得到它' 09:00:02'。我试图先将它转换为秒,然后转换回h:m:s,但结果为null。

3 个答案:

答案 0 :(得分:5)

$a = date_create_from_format("H:i:s", "08:60:02");
echo $a->format("H:i:s");

显示

09:00:02

答案 1 :(得分:1)

你可以试试像mysql这样的函数 SELECT round((SUM((08:60:02))/ 60)/ 100,1);

答案 2 :(得分:-1)

它适合你:

$hora = '08:60:02';
$hora_exp = explode(':', $hora);
$seg = $hora_exp[2];
$min = $hora_exp[1];
$hora = $hora_exp[0];

echo date('H:i:s', mktime($hora, $min, $seg, 0, 0, 0));

//result= 09:00:02

恢复:

list($hour,$min,$sec) = explode(':', '08:60:02');
echo date('H:i:s', mktime($hour, $min, $sec, 0, 0, 0));

对于MySQL:

SELECT SEC_TO_TIME(SUM(TIME_TO_SEC(`time_column`)))