date 함수
string date ( string $format [, int $timestamp ] )
(PHP 4, PHP 5)
포맷(format) 문자열에 다음 표의 값으로 대입할 경우 형식화된 현제의 로컬 시간을 반환받거나, 선택적인 timestamp에 대입하여 원하는 날짜나 시간을 얻을 수 있습니다. timestamp 인자가 주어지지 않을 경우 기본 값 time() 을 반환 합니다.
다음 표의 문자들을 format 인수 문자열로 인식합니다.
일 (Day) | 설 명 | 예 시 |
---|---|---|
d | 일, 앞에 0이 붙는 2 숫자 | 01 ~ 31(일) |
D | 요일 글자 표현, 3 문자 | Mon ~ Sun |
j | 앞에 0이 붙지 않는 일 | 1 ~ 31(일) |
l | 요일의 완전한 글자 표현 | Sunday ~ Saturday |
N | 요일의 ISO-8601 숫자 표현 (PHP 5.1.0에서 추가) | 1(월요일) ~ 7(일요일) |
S | 일 영어 접미사, 2 문자 | st, nd, rd, th. J 형식 |
w | 요일 숫자 표현 | 0(일요일) ~ 6(토요일) |
z | 해당 연도 일차 (0에서 시작) | 0 ~ 365 |
주 (week) | 설 명 | 예 시 |
---|---|---|
W | ISO-8601 주차, 주는 월요일에 시작 | 42; 그 해의 42번째 주 |
월 (Month) | 설 명 | 예 시 |
---|---|---|
F | January나 March 같은 월의 완전한 글자 표현 | January ~ December |
m | 0이 붙는 월 숫자 표현 | 01 ~ 12 |
M | 월의 축약 글자 표현, 3 문자 | Jan ~ Dec |
n | 0이 붙지 않는 월 숫자 표현 | 1 ~ 12 |
t | 주어진 월의 일 수 | 28 ~ 31 |
연 (Year) | 설 명 | 예 시 |
---|---|---|
L | 윤년 여부 | 윤년이면 1, 아니면 0 |
o | ISO-8601 연도. Y와 같지만, ISO 주차(W)가 전해나 다음해에 해당하면, 그 연도를 사용합니다. (PHP 5.1.0에서 추가) | 1999나 2003 |
Y | 연도의 완전한 숫자 표현, 4 숫자 | 1999나 2003 |
y | 연도의 두 숫자 표현 | 99나 03 |
시간 (Time) | 설 명 | 예 시 |
---|---|---|
a | 오전과 오후의 소문자 | am 또는 pm |
A | 오전과 오후의 대문자 | AM 또는 PM |
B | 스와치 인터넷 시간 | 000 ~ 999 |
g | 0이 붙지 않는 12시간 형식 시 | 1 ~ 12 |
G | 0이 붙지 않는 24시간 형식 시 | 0 ~ 23 |
h | 0이 붙는 12시간 형식 시 | 01 ~ 12 |
H | 0이 붙는 24시간 형식 시 | 00 ~ 23 |
i | 0이 붙는 분 | 00 ~ 59 |
s | 초, 0이 붙음 | 00 ~ 59 |
u | 마이크로초 (PHP 5.2.2에서 추가) | 54321 |
시간대 (Timezone) | 설 명 | 예 시 |
---|---|---|
e | 시간대 식별자 (PHP 5.1.0에서 추가) | UTC, GMT, Atlantic/Azores |
I | 일광 절약 시간 여부 | 일광 절약 시간이면 1, 아니면 0 |
O | 그리니치 시간(GMT)과 시차 | +0200 |
P | 시와 분 사이에 콜론이 들어가는 시간(GMT)과 차이 | +02:00 |
T | 시간대 축약어 | EST, MDT |
Z | 시간대 오프셋 초. UTC 서쪽은 항상 음수, UTC 동쪽은 항상 양수 | -43200 ~ 50400 |
날짜/시간 표현 (Full date/Time) | 설 명 | 예 시 |
---|---|---|
c | ISO 8601 날짜 (PHP 5에서 추가) | 2004-02-12T15:19:21+00:00 |
r | » RFC 2822 형식 날짜 | Thu, 21 Dec 2000 16:01:07 +0200 |
U | January 1 1970 00:00:00 GMT 부터 초수 | timestamp 형식 |
포맷문자열로 어떤 결과가 나오는지 아래 예제로 확인해 보겠습니다. 먼저 일(Day) 포맷형식입니다.
<?php
// 오늘은 2011년 5월 6일 금요일(Friday) 입니다.
// 일, 앞에 0이 붙는 2 숫자
echo date('d'); // 결과: 06
echo "<br />";
// 요일 글자 표현, 3 문자 출력
// Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday
echo date('D'); // 결과: Fri
echo "<br />";
// 앞에 0이 붙지 않는 일
echo date('j'); // 결과: 6
echo "<br />";
// 영문인 요일의 완전한 글자 표현
// Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday
echo date('l'); // 결과: Friday
echo "<br />";
// 요일의 ISO-8601 숫자 표현
// 1->월, 2->화, 3->수, 4->목, 5->금, 6->토, 7->일
echo date('N'); // 결과: 5
echo "<br />";
// 요일 숫자 표현
echo date('w'); // 결과: 5
echo "<br />";
// 365일 중 오늘은 125일째입니다.
echo date('z'); // 결과: 125
?>
이번에는 주(Week) 포맷형식입니다.
<?php
// 오늘은 2011년 5월 6일 금요일(Friday) 입니다.
// 1월 부터 오늘까지 18주가 흘렀습니다.
echo date('W'); // 결과: 18
?>
이제 월(Month) 포맷형식을 보겠습니다.
<?php
// 1월->January, 2월->February, 3월->March, 4월->April, 5월->May, 6월->June
// 7월->July, 8월->August, 9월->September, 10월->October, 11월->November, 12월->December
// 오늘은 2011년 5월 6일 금요일(Friday) 입니다.
// 월의 완전한 글자 표현
echo date('F'); // 결과: May
echo "<br />";
// 0이 붙는 월 숫자 표현
echo date('m'); // 결과: 05
echo "<br />";
// 월의 영문 첫 3문자
echo date('M'); // 결과: May
echo "<br />";
// 0이 붙지 않는 월 숫자 표현
echo date('n'); // 결과: 5
echo "<br />";
// 이 달 마지막 일 수, 5월은 31일까지임
echo date('t'); // 결과: 31
?>
년(Year) 포맷형식은 아래 예제와 같습니다.
<?php
// 오늘은 2011년 5월 6일 금요일(Friday) 입니다.
// 윤년이면 1를, 아니면 0인 값
echo date('L'); // 결과: 0
echo "<br />";
// 연도의 완전한 숫자 표현, 4 숫자
echo date('Y'); // 결과: 2011
echo "<br />";
// 연도의 끝 두 숫자 표현
// o 문자 포맷과 같음
echo date('y'); // 결과: 11
?>
시간(Time) 포맷형식입니다.
<?php
// 오늘은 2011년 5월 6일 금요일(Friday) PM 11시 입니다.
echo date('a'); // 결과: pm
echo "<br />";
echo date('A'); // 결과: PM
echo "<br />";
// 시차없이 24시간을 1000개(비트)로 나눈 시간; 스위스기준: 자정은 '@0', 정오는 '@500' 비트시로 표시
echo date('B'); // 결과: 660
echo "<br />";
// 0이 붙지 않는 12시간 형식 시
echo date('g'); // 결과: 11
echo "<br />";
// 0이 붙지 않는 24시간 형식 시
echo date('G'); // 결과: 23
echo "<br />";
// 0이 붙는 12시간 형식 시
echo date('h'); // 결과: 11
echo "<br />";
// 0이 붙는 24시간 형식 시
echo date('H'); // 결과: 23
echo "<br />";
// 0이 붙는 분, 현제 시각 23시 50분 입니다.
echo date('i'); // 결과: 50
echo "<br />";
// 초, 0이 붙음, 현제 시각 23시 50분 1초 입니다.
echo date('s'); // 결과: 01
echo "<br />";
// 마이크로 초입니다.
echo date('u'); // 결과: 000000
?>