פונקציה לחישוב הזמן שעבר מתאריך מסוים

פונקציה לחישוב הזמן שעבר מתאריך מסוים

  • פרסומת

הפונקציה הבאה, תהפוך כל תאריך מסוג (sql Date) בפורמט

2011-04-25 12:35 

למשהו כמו: הצטרף לפני 3 ימים

את הגירסה המקורית של הפונקציה מצאתי באתר stackOverflow והיא נכתבה על ידי arnorhs, אך היא הייתה במקור בשפה האנגלית, ואני התאמתי אותה לשפה העברית:

<?php
function humanTiming($time) 
{
    $time = time() - strtotime($time); // to get the time since that moment
    $tokens = array (
        31536000 => 'שנה',
        2592000 => 'חודש',
        604800 => 'שבוע',
        86400 => 'יום',
        3600 => 'שעה',
        60 => 'דקה',
        1 => 'שניה'
    );
    $plural = array (
        'שנה' => 'שנים',
        'חודש' => 'חודשים',
        'שבוע' => 'שבועות',
        'יום' => 'ימים',
        'שעה' => 'שעות',
        'דקה' => 'דקות',
        'שניה' => 'שניות'
    );
    foreach ($tokens as $unit => $text) {
        if ($time < $unit) continue; $numberOfUnits = floor($time / $unit); return ($numberOfUnits > 1 ? $numberOfUnits.' '.$plural[$text] : $text);
    }
}