php php 시간차이 날짜차이 구하기
페이지 정보

본문
1. 시간차이 구하기
getTimestamp() 이용하여 타임스탬프 값으로 계산하는 방법
$now = new DateTime(); // 현재일시
$before = new DateTime(‘2018-01-31 15:15:15’);
$diff = $now->getTimestamp() – $before->getTimestamp();
getTimestamp() 메서드는 Unix Timestamp 값을 반환합니다.
단순히 몇 초, 몇 분 등 시간차를 얻어올 때는 이 방식이 가장 좋겠네요.
10초의 차이라면 $diff 값은 10이 되겠네요.
2. 날짜차이 구하기
diff() 또는 date_diff() 함수를 이용하는 방법
역시 시간 문자열을 DateTime() 객체로 변환해야 합니다.
$dt1 = new DateTime(‘2018-01-30 12:12:12’);
$dt2 = new DateTime(‘2018-01-31 15:15:15’);
$diff = date_diff($dt1, $dt2);
또는 $diff = $dt1->diff($dt2);
php.net 의 함수레퍼런스 페이지를 통해 date_diff() 함수를 확인해보면 아래와 같은 설명이 나오네요. 시간차를 얻는 파워풀한 함수라는 설명에서 알 수 있듯 반환받게 될 결과값은 아래와 같은 형식을 가집니다. 비교해서 간단히 차이만 얻을 때는 오히려 맞지 않겠네요.
Powerful Function to get two date difference.
//////////////////////////////////////////////////////////////////////
//PARA: Date Should In YYYY-MM-DD Format
//RESULT FORMAT:
// ‘%y Year %m Month %d Day %h Hours %i Minute %s Seconds’ => 1 Year 3 Month 14 Day 11 Hours 49 Minute 36 Seconds
// ‘%y Year %m Month %d Day’ => 1 Year 3 Month 14 Days
// ‘%m Month %d Day’ => 3 Month 14 Day
// ‘%d Day %h Hours’ => 14 Day 11 Hours
// ‘%d Day’ => 14 Days
// ‘%h Hours %i Minute %s Seconds’ => 11 Hours 49 Minute 36 Seconds
// ‘%i Minute %s Seconds’ => 49 Minute 36 Seconds
// ‘%h Hours => 11 Hours
// ‘%a Days => 468 Days
//////////////////////////////////////////////////////////////////////
$d1 = new DateTime("2020-07-15 12:06:07");
$d2 = new DateTime("2020-07-15 11:06:07");
$d3 = $d1->getTimestamp() - $d2->getTimestamp();
$d4 = $d3 / 60 / 60;
echo $d4;
- 이전글php composer : php 의존성 관리 20.05.12
- 다음글php 여러개 실행시 출력내용을 먼저 보내기 - 출력버퍼의 처리 20.06.22
댓글목록
등록된 댓글이 없습니다.