프로그래밍언어/php
PHP 날짜 함수 // date(), strtotime(), mktime()
새끼개발자
2017. 12. 27. 10:02
1. date 함수
string date( string $format[,int $timestamp] )
주어지는 timestamp나, timestamp가 주어지지
않았을 경우에는 현재 로컬 시간을 사용하여,
주어진 포맷 문자열에 따라 형식화한 문자열을 반환.
즉 timestamp는 선택적이고,
기본값은 time()의 값.
지원되지 않는 포맷 문자는 그대로 출력
$datestring = date ("Y-m-d", time());
echo $datestring;
결과) 2017-12-27 //(현재날짜)
2. strtotime함수
int strtotime( string $time[,int $now=time()] )
주어진 날짜가 형식의 문자열을
1970년 1월 1일 0시 부터 시작하는
유닉스 타임스탬프로 변환.
두번째 인자가 주어지면
주어진 타임스탬프를 기준으로 계산.
날짜가 주어지지 않고 변화량만 주어지면
로컬 타임이 적용. ex) +1 day, +1week ,음수 등
$timestamp = strtotime("+1 week"); echo date("Y-m-d", $timestamp),;
$timestamp = strtotime("2017-12-20 +1 week");
echo date("Y-m-d", $timestamp);
결과)
2017-01-03 //현재날짜 + 7일
2017-12-27 //정한 날짜 + 7일
3. mktime()함수
int mktime ([ int $hour = date("H") [, int $minute = date("i") [, int $second = date("s") [, int $month = date("n") [, int $day = date("j") [, int $year = date("Y") [, int $is_dst = -1 ]]]]]]] )
인자로 주어진 값(시,분,초,월,일,년)에 대응하는
타임스탬프를 반환
$timestamp = mktime(0, 0, 0, 1, 1, 2017);
echo date('Y-m-d', $timestamp);
결과) 2018-01-01