복붙노트

PHP 날짜 차이 계산하기

PHP

PHP 날짜 차이 계산하기

PHP 5.2 이하

function diffdate($date1, $date2){  
$diff = abs(strtotime($date2) - strtotime($date1));  
$years = floor($diff / (365*60*60*24));  
$months = floor(($diff - $years * 365*60*60*24) / (30*60*60*24));  
$days = floor(($diff - $years * 365*60*60*24 - $months*30*60*60*24)/ (60*60*24));  

return array('year'=>$years, 'month'=>$months, 'day'=>$days);  
}  

$date1 = "2007-03-24";  
$date2 = "2009-06-26";  

echo diffdate($date1, $date2);  

PHP 5.3 이상

function diffdate($date1, $date2){  
$dtdate1 = new DateTime($date1);  
$dtdate2 = new DateTime($date2);  
$interval = $date1->diff($date2);  

$years = $interval->y;  
$months = $interval->m;  
$days = $interval->d;  

return array('year'=>$years, 'month'=>$months, 'day'=>$days);  
}  

$date1 = "2007-03-24";  
$date2 = "2009-06-26";  

echo diffdate($date1, $date2);  

참고로 DateTime->diff 는 DateInterval 객체를 반환합니다.
형식은 다음과 같습니다.

y // 년도  
m // 월  
d // 일  
h // 시간  
i // 분  
s // 초  
days // 총 경과 날짜  


'PHP' 카테고리의 다른 글

PHP URL rewrite 구현해보기  (0) 2017.11.16
PHP 리다이렉트 구현  (0) 2017.11.16
PHP JSON 다루기  (0) 2017.11.14
PHP 배열 정렬하기  (0) 2017.11.14
PHP 에서 오류 메세지 보기  (0) 2017.11.13