매우 가능성없는 일이지만 php 날짜함수 관련 질문해요.

매우 가능성없는 일이지만 php 날짜함수 관련 질문해요.

QA

매우 가능성없는 일이지만 php 날짜함수 관련 질문해요.

답변 4

본문

특정 날짜에서 7일을 더한 날짜를 구한다고 할 때

 

방법이 다양한데요.

 

strtotime('2015-02-12') + 86400 * 7 이렇게 하거나

 

strtotime('+7 day', strtotime('2015-02-12')) 이렇게도 되구요.

 

근데 두번째 경우에는 함수가 2번이나 사용하기 때문에 (단점은 아니지만)

첫번째 경우를 대부분 사용할 것 같은데요.

 

근데 질문은

절대 그럴일은 없지만

 

저 86400 이라는 숫자가 바뀌게 된다면 인데요...

 

1일이 86400초라서 저렇게 사용한건데

 

1일의 초가 바뀐다면 86400 을 사용한 모든 코드를 바꿔야 하는 문제점이 생길텐데요.

 

그럴리는 없겠지만,

 

정확한 계산을 위해서는 두번째 방법이 안전하지 않을까 생각이 되거든요.

 

전문가님들은 86400을 직접 쓰는것에 대해서 어떻게 생각하는지 궁금합니다.

그렇다고 86400 을 변수나 php상수에 집어넣어서 사용하기에는 대단한 숫자는 아닌 것 같긴 한데 말이죠.

이 질문에 댓글 쓰기 :

답변 4

php strtotime 이 편리는 하지만 용도에 맞진 않습니다.

아래의 링크 부분을 참조하면 좋습니다.

http://blog.munilive.com/strtotime%EC%97%90%EC%84%9C-1-months-%EB%98%90%EB%8A%94-1-month-ago%EB%8A%94-30%EC%9D%BC-%EC%9D%B4%EC%A0%84%EC%9D%B4-%EC%95%84%EB%8B%88%EB%8B%A4/

그러므로 이런부분은 DB에서 처리하는게 좋습니다.

 

오늘 : 

WHERE START_AT=CURDATE(); 

 

내일 : 

WHERE START_AT=CURDATE() + INTERVAL 1 DAY; 

 

어제 : 

WHERE START_AT=CURDATE() - INTERVAL 1 DAY; 

 

DB 를 사용하지 않는다면 PHP의 date class 를 쓰는게 더 좋겠지요 :)

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 93
© SIRSOFT
현재 페이지 제일 처음으로