Operacje na dacie
W tej poradzie przedstawię podstawowe operacje na dacie przy pomocy dwóch funkcji date() oraz strtotime(). Funkcja date() wyświetla date w wybranym przez nas formacie, zaś strtotime() konweruje datę do formy Unix'owej czyli wyświetla ilość sekund, które upłyneły od 1 stycznia 1970 do daty podanej w argumencie.
Na początek zajmiemy się dość popularnym skryptem obliczającym ilość dni pozostałych do danej daty.
<?php
$data = "2016-03-24";
$obecna_data = date("Y-m-d"); // pobieranie aktualnej daty
$pozostalo = (strtotime($data) - strtotime($obecna_data)) / (60*60*24);
echo "Pozostało ".$pozostalo." dni do ".$data;
?>
Zmienna $pozostało zawiera różnicę dwóch dat wyrażoną w sekundach, dlatego aby przedstawić wynik w formie dni musimy podzielić tą różnicę przez iloczyn sekund w minucie(60), minut w godzinie(60) oraz godzin w dobie(24). Reszta wydaje się nie wymagająca tłumacznia...
Teraz na odwrót. Dowiemy się jaki będzie dzień za podaną ilość dni.
<?php
$dni = 54;
$data = date("Y-m-d");
$wynik = date("Y-m-d",(strtotime($data) + (60*60*24*$dni)));
echo "Za ".$dni." będzie ".$wynik;
?>
Skrypt działa na bardzo podobnej zasadzie jak poprzedni, więc nie ma co tłumaczyć...
Mateusz Bogolubow