2017-02-18 99 views
1

我有一个格式为hh:mm:ss的字符串,我将其转换为表示总秒数的整数。例如:PHP将整数转换为hh:mm:ss

01:43:03 

01 * 3600 
43 * 60 
03 * 1 

上面的例子的结果的6183.

一个整数值使用此值然后我需要的整数转换回HH的严格的格式执行一些逻辑后:mm:ss的。

请注意,这不是一天的时间。这是一段时间。就像,我花了1小时43分3秒从一个点到另一个点。

对此转换进行编码的最短方式是什么,以便6183秒被格式化为01:43:03?

+1

http://stackoverflow.com/questions/3172332/convert-seconds-to-hourminutesecond – Jhorra

+2

[Convert seconds to Hour:Min ute:Second](http://stackoverflow.com/questions/3172332/convert-seconds-to-hourminutesecond) –

+0

可能有重复的评论。两者虽然。我诚实地搜索,但没有找到这个例子。这正是我需要的。 – rwkiii

回答

2

使用这个 -

echo $time = date("h:i:s A T",'6183'); 

我认为这将有助于。

+0

Waaa?为什么包含AM/PM和时区标识符? – Augwa

+1

删除A T,它不会在那里。 –

1

你可以简单地使用这样

<?php 
    $total_seconds = 160183; 
    $seconds = intval($total_seconds%60); 
    $total_minutes = intval($total_seconds/60); 
    $minutes = $total_minutes%60; 
    $hours = intval($total_minutes/60); 
    echo "$hours:$minutes:$seconds"; 
?> 

检查现场演示:https://eval.in/739746

-2

最简单的方法:

<?php 
$hh='01'; 
$mm='43'; 
$ss='03'; 
$result1 ="$hh : $mm : $ss"; 
echo $result1; //result : 01 : 43 : 03 

$tmp1 = $hh * 3600; 
$tmp2 = $mm * 60; 
$tmp3 = $ss; 
$result2 =$tmp1+$tmp2+$tmp3; 
echo $result2; //result : 6183 

>

+1

这不是作者所要求的。他要求将6183转换回HH:MM:SS格式。 – Augwa