sql >> Databáze >  >> RDS >> Mysql

Chyba funkce PHP Time since

mohlo by to být mnohem pohodlnější, pokud použijete PHP DateTime a DateInterval třídy a jejich metody:

function timeSince($datetime) {
    $now        = strtotime("now");
    $then       = strtotime($datetime);
    $dt_now     = new DateTime("@" . $now);
    $dt_then    = new DateTime("@" . $then);

    //DateTime's diff method returns a DateInterval object which got a format method:
    return $dt_now->diff($dt_then)->format('%a days, %h hours, %i minutes and %s seconds');
}


některé testovací případy:

//my local date & time is around "2016-02-25 19:49:00" when testing
echo '<pre>';

echo timeSince('2016-02-25 19:30:00');
//0 days, 0 hours, 19 minutes and 11 seconds
echo PHP_EOL;

echo timeSince('2013-11-02 15:43:12'); 
//845 days, 4 hours, 4 minutes and 3 seconds
echo PHP_EOL;

echo timeSince('2017-01-31 00:22:45'); 
//340 days, 4 hours, 35 minutes and 30 seconds
echo PHP_EOL;

echo timeSince('1950-05-14 07:10:05');
//24028 days, 12 hours, 37 minutes and 10 seconds
echo PHP_EOL;


kód částečně založený na této odpovědi:https://stackoverflow.com/a/19680778/3391783



  1. Výlet přes GIMR

  2. postgresql způsobí, že se stávající primární klíč při vkládání automaticky zvýší

  3. JSON_REMOVE() – Odebrání dat z dokumentu JSON v MySQL

  4. InMemory DUPLICATE Zmatek v Oracle RAC