Output is in seconds. convert to hh:mm:ss format in php

  1. My output is in the format of 290.52262423327 seconds. How can i change this to 00:04:51?

  2. The same output i want to show in seconds and in HH:MM:SS format, so if it is seconds, i want to show only 290.52 seconds.(only two integers after decimal point)? how can i do this?

I am working in php and the output is present in $time variable. want to change this $time into $newtime with HH:MM:SS and $newsec as 290.52.

Thanks :)

45
задан Justin Ethier 20 August 2010 в 20:20
поделиться

6 ответов

1)

function foo($seconds) {
  $t = round($seconds);
  return sprintf('%02d:%02d:%02d', ($t/3600),($t/60%60), $t%60);
}

echo foo('290.52262423327'), "\n";
echo foo('9290.52262423327'), "\n";
echo foo(86400+120+6), "\n";

печатает

00:04:51
02:34:51
24:02:06

2)

echo round($time, 2);
97
ответ дан 26 November 2019 в 20:59
поделиться

Numero uno ... http://www.ckorp.net/sec2time.php (используйте эту функцию)

Numero duo ... echo round (290.52262423327,2);

0
ответ дан 26 November 2019 в 20:59
поделиться

Попробуйте следующее:

$time = 290.52262423327;
echo date("h:i:s", mktime(0,0, round($time) % (24*3600)));
2
ответ дан 26 November 2019 в 20:59
поделиться
$iSeconds = 290.52262423327;
print date('H:i:s', mktime(0, 0, $iSeconds));
4
ответ дан 26 November 2019 в 20:59
поделиться

1)

$newtime = sprintf( "%02d:%02d:%02d", $time / 3600, $time / 60 % 60, $time % 60 );

2)

$newsec = sprintf( "%.2f", $time );
0
ответ дан 26 November 2019 в 20:59
поделиться
echo date('H:i:s',$time);

echo number_format($time,2);
-1
ответ дан 26 November 2019 в 20:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: