Skip to content

Instantly share code, notes, and snippets.

@micc83
Created September 13, 2013 12:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save micc83/6550016 to your computer and use it in GitHub Desktop.
Save micc83/6550016 to your computer and use it in GitHub Desktop.
Relative date by @Pellegrom
<?php
function relative_time($date, $postfix = ' ago', $fallback = 'F Y')
{
$diff = time() - strtotime($date);
if($diff < 60)
return $diff . ' second'. ($diff != 1 ? 's' : '') . $postfix;
$diff = round($diff/60);
if($diff < 60)
return $diff . ' minute'. ($diff != 1 ? 's' : '') . $postfix;
$diff = round($diff/60);
if($diff < 24)
return $diff . ' hour'. ($diff != 1 ? 's' : '') . $postfix;
$diff = round($diff/24);
if($diff < 7)
return $diff . ' day'. ($diff != 1 ? 's' : '') . $postfix;
$diff = round($diff/7);
if($diff < 4)
return $diff . ' week'. ($diff != 1 ? 's' : '') . $postfix;
$diff = round($diff/4);
if($diff < 12)
return $diff . ' month'. ($diff != 1 ? 's' : '') . $postfix;
return date($fallback, strtotime($date));
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment