Przykładowe zadanie:
Thank you for reading this post, don't forget to subscribe!Jak obliczyć ile dni minęło od danej daty do dzisiejszej?
Rozwiązanie:
Krok 1
Aby obliczyć ilość dni od danej daty ($dana_data) należy najpierw dobrze sformatować dane wejściowe:
czyli data1 i data2 ustawiamy aby były w formacie YYYY-MM-DD GMT.
$date1 = date('Y-m-d', $dana_data).' GMT'; // dana data $date2 = date('Y-m-d').' GMT'; // data dzisiejsza
Dlaczego GMT na końcu? Aby pozbyć się niechcianego błędu z zmianą czasu z letniego na zimowy bądź odwrotnie gdzie czasem wynik wychodziłby w ułamkach.
Krok 2
Korzystając z funkcji strtotime() przekształcamy nasze daty do unixowego znacznika czasu, następnie obie daty odejmujemy od siebie (dziś od daty przeszłej) i dzielimy przez liczbę 86400 która jest odpowiednikiem 1 dnia (60sek * 60 * 24).
$dif=(strtotime($date2)-strtotime($date1))/86400; echo $dif." dni";
W ten oto prosty sposób obliczamy różnicę między dwoma datami w php.
Dla przykładowych danych $date1=2013-10-10 i $date=2013-10-12 wynik będzie: “2 dni”.