본문 바로가기
PHP/PHP Advanced

PHP Date() 함수

by 진격의 파파 2013. 6. 20.
반응형

 

 

이전포스팅에서 이미 예고한대로 이번장은 가볍게 PHP Date() 함수에 대해서 알아보겠습니다.

date() 영문만 보아도 날짜 및 시간 관련 함수라는것을 이미 짐작했을거라 생각합니다.

 

기본적인 구문은

string date ( string $format [, int $timestamp ] )

정수형으로 주어지는 timestamp나, timestamp가 주어지지 않았을 경우에는 현재 로컬 시간을 사용하여, 주어진 포맷 문자열에 따라 형식화한 문자열을 반환합니다. 즉 timestamp는 선택적이고, 기본값은 time() 의 값입니다.

 

관련 예제

<?

echo date("Y-M-D"); // 2013-Jun-Thu
echo date("y-m-d"); // 13-06-20

echo date("Y-m-d"); // 2013-06-20

echo date("h-i-s"); // 09-29-56

echo date("j-n-Y"); // 20-6-2013

?>

처럼 사용합니다. 자세히 보면 함수 영문이 "대,소" 문자로 표기되고 숫자가 "0" 이 앞에 붙는게 있고 붙지 않는게 있고 그렇습니다. 관련 함수에 대해서 하나하나 살펴보겠습니다.

 

"일(day)" 과 관련된 함수

d -> 년월일 중에서 "일"을 나타내며 "0" 이 앞에 붙습니다. (01, 02, 03, 04 ...31)

D -> 요일을 영문으로 나타냅니다. 축약으로 3문자만 (Mon, Sun...)

j -> "0" 이 앞에 붙지 않는 "일" 을 나타냅니다. (1, 2, 3....31)

l (대문자 L의 소문자) -> "D"는 축약을 쓰지만 "l" 은 요일의 완전한 글자를 표현합니다. (Sunday, Monday...Saturday)

N (PHP 5.1.0에서 추가됨) -> 요일을 숫자로 보여줍니다. (1, 2, 3.. 7) 1은 월요일을 나타내며, 2는 화요일 ... 7은 일요일입니다.

w -> 요일의 숫자표현 입니다. 위 "N" 과 다르게 (0, 1, 2 ...6) 0 은 일요일 , 1은 월요일 순으로 나옵니다. "N" 과 혼동없으시기 바랍니다. 차이점은 일요일의 숫자 표현이 N 은 7 이지만 w 은 0 입니다.

z -> 해당 연도의 일차를 나타냅니다. 무슨말이냐면 1년 365일중에 오늘이 몇 일째라는것을 말합니다. (0, 1, 2, 3 ... 365)

<? echo date("z"); ?> // 170 // 오늘인 2013년 6월 20일 이므로 1월1일부터 시작해서 오늘까지 170일째를 말합니다.

--------------------------------------------------

 

"주(week)" 와 관련된 함수

W -> 몇 주차를 숫자로 나타냅니다. 시작은 월요일 입니다. 365일은 총 52주차 이므로

<? echo date("W"); ?> // 25 // 오늘이 25주차군요

--------------------------------------------------

 

"월(month)" 과 관련된 함수

F -> 월의 완전한 영문 글자 표현 (January ~ December)

m -> 0 이 붙는 월 숫자 표현 (01, 02, 03 ... 12)

M -> 월의 축약 영문 글자 표현 3문자만 나타남 (Jan, Feb ... Dec)

n -> 0 이 붙지 않는 월 숫자 표현 (1, 2, 3 ... 12)

t -> 주어진 월의 총 일 수 (28 ~ 31) // 2013년 6월달은 30일까지 있어서 <? echo date("t"); ?> // 30 이 출력됩니다.

--------------------------------------------------

 

"년(year)" 과 관련된 함수

L -> 윤년 여부를 나타냄 (윤년엔 1, 그 외엔 0)Y-> 연도를 완전한 숫자로 나타냄(1997, 2002 ... 2013)

o -> Y 와 같지만 주차(W)가 전해 또는 그 다음해에 해당하면 그 연도를 사용합니다.(php 5.1에서 추가)y -> 연도의 끝자리 2 숫자만 표현함 (97, 02, ... 13)

--------------------------------------------------

"시간(time)" 과 관련된 함수

a -> 오전과 오후의 소문자(am 또는 pm)

A -> 오전과 오후의 대문자(AM 또는 PM)

g -> 0 이 붙지 않는 12시간을 숫자로 나타냄(1, 2, 3 ... 12)

G -> 0 이 붙지 않는 24시간을 숫자로 나타냄(1, 2, 3 ... 24)

h -> 0 이 붙는 12 시간을 숫자로 나타냄(01, 02, 03 ... 12)

H -> 0 이 붙는 24 시간을 숫자로 나타냄(01, 02, 03 ... 24)

i -> 0 이 붙는 분 (00, 01, 02, 03 ... 59)

s -> 0 이 붙는 초 (00, 01, 02, 03 ... 59)

u -> 마이크로초(php 5.2.2 에서 추가됨) 1초의 표현을 5자리로 표현함 예, 54321

--------------------------------------------------

사실 실무적으로 많이 사용되는 함수는 date("Y-m-d"), date("H:i:s") 이렇게 날짜와 시간을 가져오는 내용을 많이 쓰고 있고 그 밖에 함수들도 사용은 하지만 자주 사용되지는 않는듯 하네요.

 

그리고 그 밖에 날짜관련 함수에는 time(), shorttime(), mktime() 등이 있습니다.

일단 date() 함수에 대해서 알아보기로 했응게 위 그 밖에 함수는 추후 포스팅에서 진행토록 하겠습니다.

반응형

'PHP > PHP Advanced ' 카테고리의 다른 글

PHP cookies 구문  (0) 2013.06.26
PHP file upload 구문  (2) 2013.06.25
PHP file 처리 함수  (0) 2013.06.24
PHP include 구문  (0) 2013.06.21
PHP 다차원 배열  (1) 2013.06.19