PHP 날짜 관련 함수
time (현재 시간 Unix timestamp를 출력한다.)
(Unix timestamp 는 1970년 1월1일 부터 현재시간까지를 초단위 계산한 값이다.)
date (날짜를 다양한 형태로 출력할 수 있다.
string
date ( string format [, int timestamp])
format
format 문자 |
설명 |
반환값 예 |
a |
오전과 오후, 소문자 |
am, pm |
A |
오전과 오후, 대문자 |
AM, PM |
B |
스왓치 인터넷 시간 |
000부터 999 |
c |
ISO 8601 날짜 (PHP 5에서 추가) |
2004-02-12T15:19:21+00:00 |
d |
일, 앞에 0이 붙는 2자리 |
01부터 31 |
D |
요일, 3글자 문자 |
Mon부터 Sun |
F |
월, January, March 등의 완전한 문자 표현 |
January부터 December |
g |
시, 0이 붙지 않는 12시간 형식 |
1부터 12 |
G |
시, 0이 붙지 않는 24시간 형식 |
0부터 23 |
h |
시, 0이 붙는 12시간 형식 |
01부터 12 |
H |
시, 0이 붙는 24시간 형식 |
00부터 23 |
i |
분, 0이 붙는 형식 |
00부터 59 |
I (대문자 i) |
일광 절약 시간 여부 |
일광 절약 시간이면 1, 아니면 0 |
j |
일, 0이 붙지 않는 형식 |
1부터 31 |
l (소문자 'L') |
요일, 완전한 문자 표현 |
Sunday부터 Saturday |
L |
윤년인지 여부 |
윤년이면 1, 아니면 0 |
m |
월, 숫자 표현, 0이 붙는 형식 |
01부터 12 |
M |
월, 짧은 문자 표현, 3문자 |
Jan부터 Dec |
n |
월, 숫자 표현, 0이 붙지 않는 형식 |
1부터 12 |
O |
그리니치 시간(GMT)과의 차이 |
예: +0200 |
r |
RFC 2822 형식 날짜 |
예: Thu, 21 Dec 2000 16:01:07 +0200 |
s |
초, 0이 붙는 형식 |
00 부터 59 |
S |
일 표현을 위한 영어 서수 접미어, 2문자 |
st, nd, rd나 th. j와 잘 작동합니다. |
t |
주어진 월의 일수 |
28부터 31 |
T |
이 기계의 표준 시간대 설정 |
예: EST, MDT ... |
U |
유닉스 Epoch(January 1 1970 00:00:00 GMT)로부터의 초 |
time() 참고 |
w |
요일, 숫자형 |
0(일요일)부터 6(토요일) |
W |
ISO-8601 연도의 주차, 주는 월요일에 시작 (PHP 4.1.0에서 추가) |
예: 42 (연도의 42번째 주) |
Y |
연도, 4 자리수 표현 |
예: 1999, 2003 |
y |
연도, 2 자리수 표현 |
예: 99, 03 |
z |
연도의 일차 (0부터 시작) |
0부터 365 |
Z |
표준 시간대의 오프셋 초. UTC로부터 서쪽의 오프셋은 항상 음수이고, UTC로부터 동쪽의 오프셋은 항상 양수. |
-43200부터 43200 |
<?
$wdate=date("Y-m-d h:i:s");
echo(" 오늘은 : $wdate ");
// 출력 값은: 오늘은 2005-04-02 12:45:32
?>
* 월 화 요일 구하기 <?
function yoil_kr($var1) {
$w=array("일","월","화","수","목","금","토","일");
$t=sizeof($w);
for($i=0;$i < $t ; $i++) {
if($i==$var1) {
$today_yoil=$w[$i]."요일";
break;
}
}
return $today_yoil;
}
$wdate=date("w",time());
$yoil=yoil_kr($wdate);
echo(" $yoil ");
?>
* 생일까지 남은 일 수 구하기
==================================================================================mktime날짜를 Unix timestamp로 변환 한다.
int mktime ( [int hour [, int minute [, int second [, int month [, int day [, int year [, int is_dst]]]]]]])
<?
$w_y=date("Y",$wdate);
$w_m=date("m",$wdate);
$w_d=date("d",$wdate);
$wdate= mktime (0,0,0,$m,$d,$y);
echo(" $wdate ");
?>
남은 생일 일 수 구하기
<?
// 파일명 birth.php
// 오늘날짜로 부터 남은 생일 수 구하기
$today=time();
$today_year=date("Y",$today);
$today_month=date("m",$today);
$today_day=date("d",$today);
$end_day= mktime (0,0,0,$today_month,$today_day,$today_year);
$birth_m=03;
$birth_d=13;
$birth_day= mktime (0,0,0,$birth_m,$birth_d,$today_year);
if($birth_day>=$end_day) {
$remain_day=$birth_day-$end_day;
} else {
$remain_day=($end_day-$birth_day)+(3600*24*365);
}
// 생일
$remain_day=$remain_day/(3600*24);
echo(" 내 생일은 $today_year-$birth_m-$birth_d 일이고
$remain_day 남았습니다. ");
?>
<?
$today=time();
$today_year=date("Y",$today);
$today_month=date("m",$today);
$today_day=date("d",$today);
$end_day= mktime (0,0,0,$today_month,$today_day,$today_year);
$today_week=date("w",$end_day);
$today_secend=$today_week*60*10*6*24;
$today_week_timemap=$end_day-$today_secend;
?>