PHP date: Data i czas –

Data i czas

Za chwilę nauczysz się obsługiwać datę i czas z poziomu kodu. PHP udostępnia nam funkcje pozwalające uzyskać aktualną godzinę, datę i znacznie więcej. Są one bardzo ważne w tworzeniu dynamicznych treści na stronach www. Choćby dla tak trywialnych zastosowań, jak data dodania posta na forum lub data ostatniego logowania. Data złożenie zamówienia w sklepie internetowym jest równie dobrym przykładem.

Innym, bardziej zaawansowanym, byłoby sprawdzanie, czy kliknąłeś w link resetujący hasło w ciągu 30 minut od jego otrzymania. Jeszcze jeden przykład: czy użytkownik nie loguje się akurat w dniu swoich urodzin. Jeśli tak, system mógłby złożyć mu życzenia.

Zastosowań jest dużo, zacznijmy od podstaw. Przedstawię poniżej przykład użycia funkcji date():

<?php

$data=date("Y-m-d");
$czas=date("H:i");

echo "Stronę wyświetlono dnia $data o godzinie $czas";

?>

Kilka słów wyjaśnień. Funkcja date przekształca otrzymane argumenty na ciąg znaków. Wszystko co nie jest formatem daty (u nas „-” oraz „:”) pozostaje niezmienione. W naszym przykładzie Y oznacza rok w formacie czterocyfrowym, m – miesiąc dwucyfrowy, d – dzień miesiąca, również dwucyfrowy. H oznacza godzinę, a i minutę. Kompletną specyfikację dostępnych formatów dla funkcji date po polsku znajdziecie tutaj – PHP.net Date Manual.

Data wcześniejsza lub późniejsza

Funkcja date może również wyświetlić datę inną, niż obecna. Żeby to osiągnąć należy dodać jej dodatkowy argument w postaci funkcji mktime(). Zwraca ona ilość sekund, które upłynęły od 1 stycznia 1970 roku do momentu podanego jako argument.

Zobaczmy przykład:

<?php

$data=date("Y-m-d, H:i", mktime (0,0,0,10,15,1985));

echo $data;

?>

Funkcja mktime przyjmuje aż 6 argumentów. Licząc od lewej: godzina, minuta, sekunda, miesiąc, dzień, rok. Powyższy przykład wyświetli datę 15 października 1985 roku. Istnieją jeszcze dwie ważne funkcje traktujące o upływie czasu – time() and microtime(). Obie zwracają dokładny czas, jaki upłynął od 1 stycznia 1970, z tym, że pierwsza w sekundach, a druga w milisekundach. Przydadzą się przy generowaniu liczb losowych lub przy czasie ładowania strony.

Kolejna lekcja to podsumowanie rozdziału trzeciego. Zajmiemy się praktycznym zastosowaniem nabytej do tej pory wiedzy. Zapraszam!

Spis lekcji w rozdziale trzecim

Poprzednia lekcja: Break i continue Następna lekcja: Podsumowanie działu

Dodaj komentarz