Proposal for "Date_HumanDiff"

» Metadata » Status
» Description

Generate textual time differences that are easily understandable by humans.

The class supports minutes, hours, days, weeks, months and years.
Some translations are provided, own ones can be supplied.

Examples:

- 5 seconds ago -> `just now`
- 65 seconds ago -> `a minute ago`
- 120 seconds ago -> `2 minutes ago`
- `a week ago`
- `3 weeks ago`
- `a month ago`
- `8 months ago`
- `a year ago`
- `5 years ago`

If those formats are not enough, you can define your own ones, e.g. for "< 10 seconds".

Usage


<?php

require_once 'Date/HumanDiff.php';
$dh = new Date_HumanDiff();
echo $dh->get(time() - 3600);//shows "an hour ago"
?>

Translations


<?php

require_once 'Date/HumanDiff.php';
$dh = new Date_HumanDiff();
$dh->setLanguage('de');
//alternatively, you may pass in a locale:
// $dh->setLanguage('de_AT');//falls back to the "de" language
echo $dh->get(time() - 60 * 5) . "\n"; //shows "vor 5 Minuten"
?>
» Dependencies » Links
» Timeline » Changelog
  • First Draft: 2012-04-17
  • Proposal: 2012-04-17
  • Call for Votes: 2012-05-26
  • Christian Weiske
    [2012-05-10 21:22 UTC]

    version 0.2.0 with new features