Funkcja date
Funkcja date wyświetla datę w zadanym
formacie. Pierwszym parametrem funkcja przyjmuje
format, a drugim opcjonalnym parametrem
- moment czasu w formacie timestamp. Jeśli
drugi parametr nie został podany - zostanie przyjęty bieżący
moment czasu, jeśli podany - to zadany.
Format jest zadawany za pomocą poleceń sterujących (angielskimi literami), przy czym można wstawiać dowolne separatory między nimi (myślniki, dwukropek i tak dalej).
Funkcja przyjmuje następujące polecenia (wielkie litery różnią się od zwykłych, zwróć uwagę):
U– liczba sekund, które minęły od1stycznia1970roku (czyli timestamp).z– numer dnia od początku roku.Y– rok,4cyfry.y- rok, dwie cyfry.m– numer miesiąca (z zerem z przodu).n– numer miesiąca bez zera z przodu.d– numer dnia w miesiącu, zawsze dwie cyfry (czyli pierwsza może być zerem).j– numer dnia w miesiącu bez poprzedzającego zera.w– dzień tygodnia (0 - niedziela, 1 - poniedziałek itd.).h– godziny w formacie12-godzinnym.H– godziny w formacie24-godzinnym.i– minuty.s– sekundy.L–1, jeśli rok przestępny,0, jeśli nie przestępny.W– kolejny numer tygodnia roku.t– liczba dni w podanym miesiącu.
Składnia
date(string $format, ?int $timestamp = null): string
Przykłady działania date
<?php
// Wszystkie przykłady pokazane dla daty 01.06.2013 o 12.23.59, poniedziałek
echo date('Y'); // wypisze '2013'
echo date('y'); // wypisze '13'
echo date('m'); // wypisze '06' - numer miesiąca
echo date('d'); // wypisze '01' - numer dnia w miesiącu
echo date('j'); // wypisze '1' - numer dnia w miesiącu (bez zera z przodu)
echo date('w'); // wypisze '1' - poniedziałek
echo date('H'); // wypisze '12' - godziny
echo date('i'); // wypisze '23' - minuty
echo date('s'); // wypisze '59' - sekundy
echo date('d-m-Y'); // wypisze '01-06-2013'
echo date('d.m.Y'); // wypisze '01.06.2013'
echo date('H:i:s d.m.Y'); // wypisze '12:23:59 01.06.2013'
?>
Drugi parametr funkcji date
Funkcja date ma drugi opcjonalny
parametr, który przyjmuje moment czasu
w formacie timestamp. Jeśli przekażesz ten parametr,
to funkcja date sformatuje nie bieżący
moment czasu, ale ten, który został przekazany drugim
parametrem. Ten timestamp można uzyskać,
na przykład, za pomocą mktime (ale niekoniecznie):
<?php
echo date('d-m-Y', mktime(0, 0, 0, 12, 29, 13)); // wypisze '29-12-2013'
?>
Można to wykorzystać, aby dowiedzieć się
numer dnia tygodnia dla określonej daty - po prostu
przekaż ją drugim parametrem za pomocą
funkcji mktime, a jako pierwszy parametr
ustaw znak sterujący 'w':
<?php
// Sprawdzimy jaki dzień tygodnia był 29-12-2013:
echo date('w', mktime(0, 0, 0, 12, 29, 13)); // wypisze '0' - niedziela
?>
Zobacz też
-
funkcję
mktime,
która zwraca moment czasu w formacie timestamp