<?php
function ago($when) {
$diff = $when;
// Days
$day = floor($diff / 86400);
$diff = $diff - ($day * 86400);
// Hours
$hrs = floor($diff / 3600);
$diff = $diff - ($hrs * 3600);
// Mins
$min = floor($diff / 60);
$diff = $diff - ($min * 60);
// Secs
$sec = $diff;
// Return how long ago this was. eg: 3d 17h 4m 18s ago
// Skips left fields if they aren't necessary, eg. 16h 0m 27s ago / 10m 7s ago
$str = sprintf("%s%s%s%s",
$day != 0 ? $day."d " : "",
($day != 0 || $hrs != 0) ? $hrs."h " : "",
($day != 0 || $hrs != 0 || $min != 0) ? $min."m " : "",
$sec."s ago"
);
return $str;
}
echo ago(3600);
- Output for 4.3.0 - 4.3.11, 4.4.0 - 4.4.9, 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.12 - 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
- 1h 0m 0s ago
preferences:
232.76 ms | 406 KiB | 315 Q