/ Published in: PHP
Expand |
Embed | Plain Text
function getTimeDiff($timestamp=false, $loop=false) { if ($timestamp) { // Determine the difference, between the time now and the timestamp $difference = $current_time - $timestamp; // Set the periods of time // Determine which period we should use, based on the number of seconds lapsed. // If the difference divided by the seconds is more than 1, we use that. // Eg 1 year / 1 decade = 0.1, so we move on // Go from decades backwards to seconds for ($val = sizeof($lengths) - 1; ($val >= 0) && (($number = $difference / $lengths[$val]) <= 1); $val--); // Ensure the script has found a match if ($val < 0) $val = 0; // Determine the minor value, to recurse through $new_time = $current_time - ($difference % $lengths[$val]); // Set the current value to be floored // If required create a plural if($number != 1) $periods[$val].= "s"; // Return text // Ensure there is still something to recurse through, and we have not found 1 minute and 0 seconds. // note: 'the loop' is turned off - it will only show the highest if ($loop && ($val >= 1) && (($current_time - $new_time) > 0)){ $text .= getTimeDiff($new_time); } return $text; } }
You need to login to post a comment.
