Manuál PHP | ||
---|---|---|
Předcházející | Další |
date
Popis
string date ( string format [, int timestamp] )
Vrací řetězec formátovaný podle daného formátovacího řetězce s použitím
daného celočíselného časového razítka timestamp
nebo aktuálního místního času (není-li časové razítko zadáno). Jinými slovy, parametr timestamp
je nepovinný a jeho výchozí hodnota je výsledek funkce time().
Poznámka: Platný rozsah pro časové razítko je typicky od pátku 13.12.1901 20:45:54 GMT do úterý 19.1.2038 03:14:07 GMT. (Tyto hodnoty odpovídají minimální a maximální hodnotě 32-bitového celého čísla se znaménkem). Na Windows je tento rozsah omezen na období 1.1.1970 až 19.1.2038.
K vygenerování časového razítka z řetězce reprezentujícího datum lze použít funkci strtotime(). Navíc některé databáze mají funkce, které konvertují jejich datové formáty na časová razítka (např. funce UNIX_TIMESTAMP v MySQL).
Tabulka 1. Ve formátovacím řetězci lze používat tyto znaky:
znak parametru format | Popis | Ukázka vracených hodnot |
---|---|---|
a | Příznak dopoledne/odpoledne malými písmeny | am nebo pm |
A | Příznak dopoledne/odpoledne velkými písmeny | AM nebo PM |
B | Internetový čas Swatch | 000 až 999 |
d | Den měsíce, dvě číslice s úvodními nulami | 01 až 31 |
D | Textová reprezentace dne, tři znaky | Mon až Sun |
F | Plná textová reprezentace měsíce typu January nebo March | January až December |
g | 12-hodinový formát hodiny bez úvodních nul | 1 až 12 |
G | 24-hodinový formát hodiny bez úvodních nul | 0 až 23 |
h | 12-hodinový formát hodiny s úvodními nulami | 01 až 12 |
H | 24-hodinový formát hodiny s úvodními nulami | 00 až 23 |
i | Minuty s úvodními nulami | 00 až 59 |
I (velké i) | Zjištění, zda je letní čas | 1 pokud je letní čas, 0 jinak. |
j | Den měsíce bez úvodních nul | 1 až 31 |
l (malé 'L') | Plná textová reprezentace dne v týdnu | Sunday až Saturday |
L | Zjištění, zda je rok přestupný | 1 pokud je přestupný rok, 0 jinak. |
m | Číselná reprezentace měsíce s úvodními nulami | 01 až 12 |
M | Krátká textová reprezentace měsíce, tři znaky | Jan až Dec |
n | Číselná reprezentace měsíce bez úvodních nul | 1 až 12 |
O | Odchylka od Greenwichského času (GMT) v hodinách | Příklad: +0200 |
r | Datum formátované podle RFC 822 | Příklad: Thu, 21 Dec 2000 16:01:07 +0200 |
s | Sekundy s úvodními nulami | 00 až 59 |
S | Anglická pořadová přípona dne v měsíci, 2 znaky | st, nd, rd nebo th. Dobře funguje s j |
t | Počet dní v daném měsíci | 28 až 31 |
T | Nastavení časového pásma na tomto počítači | Příklady: EST, MDT ... |
U | Sekundy od počátku éry Unix (1. ledna 1970 00:00:00 GMT) | Viz také time() |
w | Číselná reprezentace dne v týdnu | 0 (pro neděli) až 6 (pro sobotu) |
W | Číslo týdne podle ISO-8601, týdny začínají v pondělí (doplněno v PHP 4.1.0) | Příklad: 42 (42. týden v roce) |
Y | Plná číselná reprezentace roku, 4 číslice | Příklady: 1999 nebo 2003 |
y | Dvouciferná reprezentace roku | Příklady: 99 nebo 03 |
z | Den v roce | 0 až 365 |
Z | Posun časového pásma v sekundách. Posun časových pásem západně od UTC je vždy záporný, východně od UTC je vždy kladný. | -43200 až 43200 |
Nerozpoznané znaky ve formátovacím řetězci se vytiskou tak, jak jsou. Při použití gmdate() má formát Z vždy hodnotu 0.
Rozpoznávané znaky ve formátovacím řetězci můžete ochránit před zpracováním tak, že jim předřadíte obrácené lomítko. Pokud už má znak s obráceným lomítkem speciální význam, je třeba před něj přidat ještě jedno obrácené lomítko.
Je možné použít společně date() a mktime() k nalezení dat v budoucnosti či v minulosti.
Příklad 3. Příklad - date() a mktime()
|
Poznámka: Toto může být spolehlivější než prosté přičítání nebo odčítání sekund ve dni nebo měsíci (kvůli letnímu času).
Několik příkladů formátování pomocí date(). Nezapomeňte, že byste měli předřadit obrácené lomítko všem ostatním znakům, protože ty, které mají nyní speciální význam, budou způsobovat neočekávané výsledky, a ostatním může být přiřazen význam v budoucích verzích PHP. Ve všech takových případech také musíte používat apostrofy (k ohraničení řetězce), abyste zabránili znakům jako \n v odřádkování.
Pro formátování dat v jiných jazycích je třeba použít funkce setlocale() a strftime().
Viz také getlastmod(), gmdate(), mktime(), strftime() a time().
Předcházející | Domů | Další |
date_timezone_set | Nahoru |