date

date -- Formatuje lokalny czas/datę

Opis

string date ( string format [, int znacznik_czasu])

Zwraca datę sformatowaną według szablonu podanego w argumencie format . Żądana data określona jest w argumencie znacznik_czasu , a w przypadku jego braku pobierany jest aktualny czas .

Notatka : Poprawny zakres znacznika czasu to zwykle od piątku , 13 grudnia 1901 20:45:54 GMT ( czasu Greenwich ) do wtorku , 19 stycznia 2038 03:14:07 GMT . (Wartości te odpowiadają minimalnej i maksymalnej wartości 32-bitowej liczbie całkowitej ze znakiem ) . W systemie Windows zakres ten jest bardziej ograniczony i zawiera się w przedziale 01-01-1970 do 19-01-2038 .

Wygenerowanie znacznika czasu z daty zapisanej jako łańcuch znaków umożliwia funkcja strtotime( ) . Również niektóre systemy baz danych mają funkcje konwersji ich formatów daty w uniksowy znacznik czasu ( jak np . funkcja UNIX_TIMESTAMP w MySQL-u ) .



Poniższych znaków używa się w szablonie formatującym datę :

Nierozpoznane znaki w szablonie formatującym będą wyświetlone tak jak są. "Z" zawsze zwróci "0" kiedy używana jest funkcja gmdate() .

Przykład 1 . przykłady użycia date( )

 
echo

 
date

 
(

 
"l

 
dS

 
of

 
F

 
Y

 
h:i:s

 
A")

 
;

 
echo

 
"July

 
1

 
,

 
2000

 
is

 
on

 
a

 
"

 
.

 
date

 
("l"

 
,

 
mktime(0,0,0,7,1,2000))

 
;





Jeśli nie chcesz , aby któryś z rozpoznawalnych w szablonie znaków został zastąpiony odpowiadającą mu częścią daty , musisz poprzedzić go znakiem odwrotnego ukośnika ( backslash ) . Jeśli znak razem z odwrotnym ukośnikiem tworzy jakiś znak specjalny , musisz również zacytować ukośnik odwrotny .

Przykład 2 . Opuszczanie znaków w szablonie date( )

 
echo

 
date(

 
"l

 
\\t\h\e

 
jS")

 
;

 
/

 
/

 
wyświetla

 
tekst

 
typu

 
'Saturday

 
the

 
8th

 
'





Można użyć date( ) i mktime( ) razem , aby odszukać daty w przyszłości lub przeszłości .

Przykład 3 . przykłady zastosowania date( ) i mktime( )

 
$jutro

 
=

 
mktime

 
(

 
0,0,0,date("m"

 
)

 
,date("d")+1,date("Y"))

 
;

 
$ostatni_miesiac

 
=

 
mktime

 
(0,0,0,date("m")-1,date("d")

 
,

 
date("Y"))

 
;

 
$kolejny_rok

 
=

 
mktime

 
(0,0,0,date("m")

 
,

 
date("d")

 
,

 
date("Y")+1)

 
;



Notatka : Rozwiązanie to jest bardziej godne zaufania od dodawania lub odejmowania określonej liczby sekund , chociażby z powodu zmiany czasu .



Poniżej znajduje się kilka przykładów zastosowania date( ) . Proszę zwrócić uwagę , że powinno się cytować wszystkie znaki aby uniknąć nieoczekiwanych rezultatów , a poza tym , nawet te znaki , które obecnie nie mają znaczenia , mogą mieć przypisane jakieś znaczenie w przyszłych wersjach PHP . O ile to możliwe , należy używać cudzysłowów pojedynczych , żeby uniknąć np . zamiany \n na znak nowej linii .

Przykład 4 . zastosowania date( )

 
/*

 
Dzisiaj

 
jest

 
March

 
10th

 
,

 
2001

 
,

 
5:16:18

 
pm

 
*

 
/

 
$today

 
=

 
date(

 
"F

 
j

 
,

 
Y

 
,

 
g:i

 
a")

 
;

 
/

 
/

 
March

 
10

 
,

 
2001

 
,

 
5:16

 
pm

 
$today

 
=

 
date("m.d.y")

 
;

 
/

 
/

 
03.10.01

 
$today

 
=

 
date("j

 
,

 
n

 
,

 
Y")

 
;

 
/

 
/

 
10

 
,

 
3

 
,

 
2001

 
$today

 
=

 
date("Ymd")

 
;

 
/

 
/

 
20010310

 
$today

 
=

 
date('h-i-s

 
,

 
j-m-y

 
,

 
it

 
is

 
w

 
Day

 
z

 
')

 
;

 
/

 
/

 
05-16-17

 
,

 
10-03-01

 
,

 
1631 1618 6

 
Fripm01

 
$today

 
=

 
date('\i\t

 
\i\s

 
\t\h\e

 
jS

 
\d\a\y

 
.')

 
;

 
/

 
/

 
It

 
is

 
the

 
10th

 
day

 
.

 
$today

 
=

 
date("D

 
M

 
j

 
G:i:s

 
T

 
Y")

 
;

 
/

 
/

 
Sat

 
Mar

 
10 15:16:08

 
MST

 
2001

 
$today

 
=

 
date('H:m:s

 
\m

 
\i\s\

 
\m\o\n\t\h')

 
;

 
/

 
/

 
17:03:17

 
m

 
is

 
month

 
$today

 
=

 
date("H:i:s")

 
;

 
/

 
/

 
17:16:17





Aby sformatować datę w innych językach , należy użyć funkcji setlocale( ) i strftime( ) .

Patrz także getlastmod( ) , gmdate( ) , mktime( ) , strftime( ) i time( ) .