Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Odejmowanie dat
Forum PHP.pl > Forum > Przedszkole
zielu001
Witam, pobieram datę z bazy mySQL o typie "datetime".

Moje pytanie brzmi: Jak uzyskać ile godzin temu rekord został dodany do bazy? Chcę zrobić w newsie informacje że jest nowy news ( z przed 24 godzin )

Proszę o pomoc. Jak by ktoś nie wiedział data w tabeli jest taka: 2011-11-18 15:13:39
aachi
Zamieniasz swoją datę na timestamp, odejmujesz go od aktualnego timestamp i masz w sekundach różnicę tych dwóch czasów.
Przykładowy sposób http://www.php.net/manual/pl/function.date.php#106097


A na szybko znaleziona procedura do zamiany
  1. /*
  2. * Function to turn a mysql datetime (YYYY-MM-DD HH:MM:SS) into a unix timestamp
  3. * @param str
  4. * The string to be formatted
  5. */
  6.  
  7. function convert_datetime($str) {
  8.  
  9. list($date, $time) = explode(' ', $str);
  10. list($year, $month, $day) = explode('-', $date);
  11. list($hour, $minute, $second) = explode(':', $time);
  12.  
  13. $timestamp = mktime($hour, $minute, $second, $month, $day, $year);
  14.  
  15. return $timestamp;
  16. }



Ps. W manualu w opisie funkcji date w przykładzie #3 też coś tam napisali jak to należałoby zrobić.
raak07
hej
może to: funkcja DATEDIFF() i TIMEDIFF()

Pozdrawiam
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.