Skip to content

Instantly share code, notes, and snippets.

@PauliusKrutkis
Last active March 7, 2017 20:50
Show Gist options
  • Save PauliusKrutkis/a10eff9ffe4bbd47b7cde5b8c79d32ac to your computer and use it in GitHub Desktop.
Save PauliusKrutkis/a10eff9ffe4bbd47b7cde5b8c79d32ac to your computer and use it in GitHub Desktop.
Time ago script
<?php
// usage: echo timeAgo(get_the_time('U'));
function timeAgo($time)
{
$out = '';
$now = time();
$diff = $now - $time;
if ($diff < 60)
return 'Published today';
elseif ($diff < 3600)
return sprintf(
"Published %s %s",
$out = round($diff / 60),
$out == 1 ? 'minute ago' : 'minutes ago'
);
elseif ($diff < 3600 * 24)
return sprintf(
"Published %s %s",
$out = round($diff / 3600),
$out == 1 ? 'hour ago' : 'hours ago'
);
elseif ($diff < 3600 * 24 * 2)
return 'Published yesterday';
elseif ($diff < 3600 * 24 * 7)
return sprintf(
"Published %s %s",
$out = round($diff / (3600 * 24)),
'days ago'
);
elseif ($diff < 3600 * 24 * 7 * 4)
return sprintf(
"Published %s %s",
$out = round($diff / (3600 * 24 * 7)),
$out == 1 ? 'week ago' : 'weeks ago'
);
elseif ($diff < 3600 * 24 * 7 * 4 * 12)
return sprintf(
"Published %s %s",
$out = round($diff / (3600 * 24 * 7 * 4)),
$out == 1 ? 'month ago' : 'months ago'
);
else
return sprintf("Published %s", date('Y m d', $time));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment