<?php
function timediff($time, $now = null)
{
if (is_null($now))
$now = time();
$periods = array(
'second' => 1,
'minute' => 60,
'hour' => 60,
'day' => 24,
'week' => 7,
'year' => 52,
);
$diff = abs($now - $time);
$seconds = 1;
$period = 'second';
foreach ($periods as $name => $base)
{
if ($diff < $seconds * $base)
break;
$period = $name;
$seconds *= $base;
}
$n = floor($diff / $seconds);
return $n . ' ' . $period . (($n == 1) ? '' : 's');
}