español - La salida está en segundos. convertir a formato hh: mm: ss en php
string to date php (9)
1)
$newtime = sprintf( "%02d:%02d:%02d", $time / 3600, $time / 60 % 60, $time % 60 );
2)
$newsec = sprintf( "%.2f", $time );
Mi salida está en el formato de 290.52262423327 segundos. ¿Cómo puedo cambiar esto a 00:04:51?
La misma salida que quiero mostrar en segundos y en formato HH: MM: SS, así que si es segundos, quiero mostrar solo 290.52 segundos. (¿Solo dos enteros después del punto decimal)? ¿Cómo puedo hacer esto?
Estoy trabajando en php y el resultado está presente en la variable $time
. desea cambiar este $time
a $newtime
con HH: MM: SS y $newsec
como 290.52.
Gracias :)
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";
huellas dactilares
00:04:51
02:34:51
24:02:06
2)
echo round($time, 2);
No sé si esta es la forma más eficiente, pero si también necesita mostrar días, esto funciona:
function foo($seconds) {
$t = round($seconds);
return sprintf(''%02d %02d:%02d:%02d'', ($t/86400%24), ($t/3600) -(($t/86400%24)*24),($t/60%60), $t%60);
}
Numero uno ... http://www.ckorp.net/sec2time.php (use esta función)
Numero duo ... echo round(290.52262423327,2);
Prueba este
echo gmdate("H:i:s", 90);
Prueba esto :)
private function conversionTempsEnHms($tempsEnSecondes)
{
$h = floor($tempsEnSecondes / 3600);
$reste_secondes = $tempsEnSecondes - $h * 3600;
$m = floor($reste_secondes / 60);
$reste_secondes = $reste_secondes - $m * 60;
$s = round($reste_secondes, 3);
$s = number_format($s, 3, ''.'', '''');
$h = str_pad($h, 2, ''0'', STR_PAD_LEFT);
$m = str_pad($m, 2, ''0'', STR_PAD_LEFT);
$s = str_pad($s, 6, ''0'', STR_PAD_LEFT);
$temps = $h . ":" . $m . ":" . $s;
return $temps;
}
Prueba esto:
$time = 290.52262423327;
echo date("h:i:s", mktime(0,0, round($time) % (24*3600)));
$iSeconds = 290.52262423327;
print date(''H:i:s'', mktime(0, 0, $iSeconds));
echo date(''H:i:s'',$time);
echo number_format($time,2);