<?php
$diff = strtotime('2015-04-14T10:55:28+01:00') - strtotime('2015-04-10T13:19:03+01:00');
function secs_to_h($secs)
{
$units = array(
"week" => 7*24*3600,
"day" => 24*3600,
"hour" => 3600,
"minute" => 60,
"second" => 1,
);
// specifically handle zero
if ( $secs == 0 ) return "0 seconds";
$s = "";
foreach ( $units as $name => $divisor ) {
if ( $quot = intval($secs / $divisor) ) {
$s .= "$quot $name";
$s .= (abs($quot) > 1 ? "s" : "") . ", ";
$secs -= $quot * $divisor;
}
}
return substr($s, 0, -2);
}
var_dump($diff, gmdate("H",$diff), secs_to_h(6811.5));
- Output for 5.0.0 - 5.0.5, 5.1.0 - 5.1.6, 5.2.0 - 5.2.17, 5.3.0 - 5.3.29, 5.4.0 - 5.4.45, 5.5.24 - 5.5.35, 5.6.7 - 5.6.28, 7.0.0 - 7.0.20, 7.1.0 - 7.1.20, 7.2.0 - 7.2.33, 7.3.16 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
- int(336985)
string(2) "21"
string(30) "1 hour, 53 minutes, 31 seconds"
- Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9
- int(0)
string(2) "00"
string(30) "1 hour, 53 minutes, 31 seconds"
preferences:
184.62 ms | 402 KiB | 313 Q