날짜관련 계산하기 > PHP

본문 바로가기
사이트 내 전체검색

PHP

날짜관련 계산하기

페이지 정보

profile_image
작성자 최고관리자
댓글 0건 조회 6,134회 작성일 21-02-09 11:45

본문

날짜 관련 계산에 필요한 정보를 수집 중 딱 내 맘에 맞는 것을 찾았답니다.

네이버에서 퍼 왔어요.


초보용인데 혹여 모르시는 분들에게 도움이 될까해서 글 남깁니다.

php 에서의 날짜관련함수 및 계산방법입니다.

출력.
mktime(시,분,초,월,일,년) 유닉스 타임(타임스탬프:1970년을기준으로부터 1초단위숫자)으로 값을 출력합니다.
타임스탬프를 날짜형식으로 볼수 있는 함수가 date 입니다.
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 은 날짜가 들어가지 않으면 기본적으로 오늘을 뜻합니다.
그리고 이 함수 또한 일수가 넘어가면 다음달로 계산됩니다.
strtotime("+3 day") => 오늘에서 3일 후, 물론 달이 넘어가면 1일로 계산됨
 이 함수를 개인적으로 좋아하는 이유가 mktime 을 사용할 필요가 없다는 점입니다.
 (필요가 있을 경우를 찾아주세요. ㅡ_-+)

date("Y년 m월d일 h:m:s",mktime(12,12,1,1,2,2005))
 date("Y년 m월 d일 h:m: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

이만하면 PHP 에서 웬만한 날짜 계산을 하실 수 있습니다



 출처 : http://cafe.naver.com/kpaddon.cafe?iframe_url=/ArticleRead.nhn%3Farticleid=18

댓글목록

등록된 댓글이 없습니다.

회원로그인

회원가입

  • 게시물이 없습니다.

접속자집계

오늘
2,119
어제
4,039
최대
6,642
전체
830,634
contact : webmaster@beautipia.co.kr
Copyright © beautipia.co.kr. All rights reserved.