PHP Ymd 형태 date <-> timestamp 변환
페이지 정보
본문
1. php 에서의 날짜관련함수 및 계산
출력.
mktime(시,분,초,월,일,년) 유닉스 타임(타임스탬프:1970년을기준으로부터 1초단위숫자)으로 값을 출력합니다.
타임스탬프를 날짜형식으로 볼수 있는 함수가 date 입니다.
date는 날짜가 들어가지 않으면 기본적으로 오늘을 뜻합니다.
date("Y-m-d") ==> 오늘 날짜
mktime 으로 얻은 값을 date 함수로 특정 형식으로 출력
date("Y-m-d", mktime(0, 0, 0, 12, 32, 1997)); ==> 1998-01-01
출력의 할때 편리한 점은 1월32일은 2월1 일로 나온다는 것입니다.
그럼 2005년 1월부터 100일 지난 날은 몇일일까요?
응용 date("Y-m-d", mktime(0, 0, 0, 0 , 1, 101, 2005)); ==> 2005년 04월 11일
(1월1일은 포함하면 안되겠죠? 그래서 하루 더 증가~)
출력의 기본입니다.
계산.
기본연산은 strtotime("각종연산") 으로 합니다.
타임스탬프를 리턴합니다.
이말은 date 형으로 출력할 수 있다는 말입니다. ^^
strtotime 은 날짜가 들어가지 않으면 기본적으로 오늘을 뜻합니다.
그리고 이 함수 또한 일수가 넘어가면 다음달로 계산됩니다.
strtotime("+3 day") => 오늘에서 3일 후, 물론 달이 넘어가면 1일로 계산됨
이 함수를 개인적으로 좋아하는 이유가 mktime 을 사용할 필요가 없다는 점입니다.
(필요가 있을 경우를 찾아주세요. ㅡ_-+)
date("Y년 m월 d일 H:i:s",mktime(12,12,1,1,2,2005))
date("Y년 m월 d일 H:i:s",strtotime("2005-01-02 12:12:01"))
이 두 함수는 같은 2005년 01월 02일 12:01:01 을 나타냅니다.
물론 사용하기도 strtotime 이 훨씬 쉽습니다.
그럼 2005년 1월부터 100일 지난 날은 몇일인지 strtotime 을 이용해서 확인해봅시다.
응용 date("Y-m-d", strtotime("2005-01-01 +100 day")); ==> 2005년 04월 11일
위에서
+100 day 는 +2 month 나 +10 year 와 같이 특정 연산이 가능합니다.
그래서 더욱 멋지게 보입니다. ㅡ_-+
두날짜의 연산은 타임스탬프로 두날짜의 차이값을 얻어서 86400 (60초*60분*24시) 로 나누면 몇일인지 나옵니다.
intval((strtotime("2005-01-10")-strtotime("2005-01-02"))/86400) => 8
2. Ymd 형태 date를 timestamp로 변환
<?php
echo time();
echo '<br>';
echo strtotime(date('Ymd'));
echo '<br>';
echo strtotime(date('Ymd H:i:s'));
echo '<br>';
echo strtotime(date('Y-m-d'));
echo '<br>';
echo strtotime(date('Y-m-d H:i:s'));
?>
모두 같은 값을 표시됩니다.
1511359092
3. timestamp 를 datetime ( Ymd ) 로 변환
<?php echo date('Y-m-d H:i:s', 1511359092); ?>
2017-11-22 22:58:12
관련사이트
http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=38930
https://www.delftstack.com/ko/howto/php/how-to-convert-a-timestamp-to-a-readable-date-or-time-in-php/
출력.
mktime(시,분,초,월,일,년) 유닉스 타임(타임스탬프:1970년을기준으로부터 1초단위숫자)으로 값을 출력합니다.
타임스탬프를 날짜형식으로 볼수 있는 함수가 date 입니다.
date는 날짜가 들어가지 않으면 기본적으로 오늘을 뜻합니다.
date("Y-m-d") ==> 오늘 날짜
mktime 으로 얻은 값을 date 함수로 특정 형식으로 출력
date("Y-m-d", mktime(0, 0, 0, 12, 32, 1997)); ==> 1998-01-01
출력의 할때 편리한 점은 1월32일은 2월1 일로 나온다는 것입니다.
그럼 2005년 1월부터 100일 지난 날은 몇일일까요?
응용 date("Y-m-d", mktime(0, 0, 0, 0 , 1, 101, 2005)); ==> 2005년 04월 11일
(1월1일은 포함하면 안되겠죠? 그래서 하루 더 증가~)
출력의 기본입니다.
계산.
기본연산은 strtotime("각종연산") 으로 합니다.
타임스탬프를 리턴합니다.
이말은 date 형으로 출력할 수 있다는 말입니다. ^^
strtotime 은 날짜가 들어가지 않으면 기본적으로 오늘을 뜻합니다.
그리고 이 함수 또한 일수가 넘어가면 다음달로 계산됩니다.
strtotime("+3 day") => 오늘에서 3일 후, 물론 달이 넘어가면 1일로 계산됨
이 함수를 개인적으로 좋아하는 이유가 mktime 을 사용할 필요가 없다는 점입니다.
(필요가 있을 경우를 찾아주세요. ㅡ_-+)
date("Y년 m월 d일 H:i:s",mktime(12,12,1,1,2,2005))
date("Y년 m월 d일 H:i:s",strtotime("2005-01-02 12:12:01"))
이 두 함수는 같은 2005년 01월 02일 12:01:01 을 나타냅니다.
물론 사용하기도 strtotime 이 훨씬 쉽습니다.
그럼 2005년 1월부터 100일 지난 날은 몇일인지 strtotime 을 이용해서 확인해봅시다.
응용 date("Y-m-d", strtotime("2005-01-01 +100 day")); ==> 2005년 04월 11일
위에서
+100 day 는 +2 month 나 +10 year 와 같이 특정 연산이 가능합니다.
그래서 더욱 멋지게 보입니다. ㅡ_-+
두날짜의 연산은 타임스탬프로 두날짜의 차이값을 얻어서 86400 (60초*60분*24시) 로 나누면 몇일인지 나옵니다.
intval((strtotime("2005-01-10")-strtotime("2005-01-02"))/86400) => 8
2. Ymd 형태 date를 timestamp로 변환
<?php
echo time();
echo '<br>';
echo strtotime(date('Ymd'));
echo '<br>';
echo strtotime(date('Ymd H:i:s'));
echo '<br>';
echo strtotime(date('Y-m-d'));
echo '<br>';
echo strtotime(date('Y-m-d H:i:s'));
?>
모두 같은 값을 표시됩니다.
1511359092
3. timestamp 를 datetime ( Ymd ) 로 변환
<?php echo date('Y-m-d H:i:s', 1511359092); ?>
2017-11-22 22:58:12
관련사이트
http://www.phpschool.com/gnuboard4/bbs/board.php?bo_table=tipntech&wr_id=38930
https://www.delftstack.com/ko/howto/php/how-to-convert-a-timestamp-to-a-readable-date-or-time-in-php/
댓글목록
등록된 댓글이 없습니다.