PHP & SQL

[PHP] 시간함수( strtotime, time(), date() )

홍사훈     2건     4,346회

본문

▶ 타임스탬프(timestamp) : 1970년 1월 1일을 기준으로 경과된 시간을 초단위로 표시한 시간

//php mktime() 함수사용

$times = mktime();  // 현재 서버의 시간을 timestamp 값으로 가져옴

$date1 = date("Y-m-d h:i:s", $times);  // 초 -> 년-월-일 시:분:초  변환

$date2 = date("Y-m-d h:i:s", $times+3600);  //  1시간(3600초) 뒤의 시간

// $date1 값: 2014-02-20 18:04:55

// $date2 값: 2014-02-20 19:04:55

 

$times = mktime('0','0','0','2',20','2014');  //  mktime(시,분,초,월,일,년)

// $times 값: 1392822000

 

// 내일날짜: date(d)+1, 지난달: date(m)-1

$date1 = date("Y-m-d", mktime(0,0,0,date(m),date(d)+1,date(Y)));  // 내일날짜 구하기

// $date1 값: 2014-02-21

 

▶ date("출력형식",time());

A : "AM" 또는 "PM"

d : 두자리로 표현되는 날짜, 즉 "01"~"31"

 D : 세글자로 표현되는 요일, 즉 "Fri"

F : 월을 긴 문장으로 나타냅니다. 즉 "January"

h : 시간을 12시간 단위로 나타냅니다. "01"~"12"

H : 시간을 24시간 단위로 나타냅니다.

g : 시간을 12시간 단위로 0 없이 나타냅니다. "1"~"12"

G : 시간을 24시간 단위로 0 없이 나타냅니다. "0"~"24"

i : 분을 나타냅니다. "00"~"59"

j : 날짜를 0 없이 나타냅니다. "1"~"31"

l : (L의 소문자)요일을 나타냅니다. "Friday"

L : 윤년인지의 여부를 나타냅니다. "0" 또는 "1"

m : 달을 나타냅니다. "01"~"12"

n : 0 없이 달을 나타냅니다. "1"~"12"

M : 3글자로 달을 나타냅니다. "Jan"

s : 초를 나타냅니다. "00"~"59"

S : 영어에서 순서를 나타내는 2글자로 된 접미사; "th", "nd"

t : 주어진 달의 날 수; 즉 "28"~"31"

U : 기준시점(GMT 1970년 1월1일 00:00:00)으로부터 지난 시간을 초로 표시

w : 요일을 숫자로 표시합니다. 즉 "0"(일요일) ~ "6"(토요일)

Y : 4글자로 연도표시, "1999"

y : 2글자로 연도표시, "99"

z : 날짜를 표시, "0"~"365"

Z : 지역간의 시간편차를 초단위로 표시, 즉 "-43200"~"43200"

 

▶ timestamp 형태

echo strtotime("now"); -> 1269520600

echo strtotime("+1 hour"); -> 1269524200

echo time(); -> 1269520600

 

▶ String 형태

echo date( 'Y-m-d H:i:s', time() );

-> 2010-03-25 21:36:40

 

▶ String <> timestamp 변환

$timeString = date( 'Y-m-d H:i:s', time() );

echo $timeString; -> 2010-03-25 21:44:32

$time = strtotime($timeString);

echo $time; -> 1269520600

용대리님의 댓글

용대리

/// 광고글은 삭제합니다 ///

행사기간님의 댓글

행사기간

/// 광고글은 삭제합니다 ///



Copyrightⓡ1996~2017, sahoon.com All Rights Reserved.