2017-01-10 1 views
0

으로 두 날짜 사이의 차이를 가져 오는 방법을 나는이 완벽한 작업과 왼쪽 정확한 일 나에게주고있다 Y-m-d타이밍

$dateOld = new DateTime("2017-01-10"); 
$dateNew = new DateTime("2017-01-11"); 

echo $diff = $dateNew->diff($dateOld)->format("%a"); 

형식으로되어 두 날짜가 있습니다.

하지만 지금은 time을 추가하며 H-M 형식 23:3817:21처럼

에 나는 차이해도를 얻으려면 두 dateTime

$dateOld = new DateTime("2017-01-10 23:38"); 
$dateNew = new DateTime("2017-01-11 17:21"); 

echo $diff = $dateNew->diff($dateOld)->format("%a"); 

의 차이를 얻기 위해 지금은 이해할 수 없다 부동 소수점의 경우 값. 이제 시간과 연결된 날짜로 작업 하시겠습니까?

+0

가능한 복제 [? PHP를 사용하여 두 날짜 사이의 차이를 계산하는 방법 (http://stackoverflow.com/questions/676824/how-to-calculate-the- 차이점 - 두 - 날짜 - 사용 - PHP) – vascowhite

답변

1

사용이 :

<?php 
$dateOld = new DateTime("2017-01-10 23:38"); 
$dateNew = new DateTime("2017-01-11 17:21"); 

$diff = $dateNew->diff($dateOld); 
$days = $diff->d; 
$hours = $diff->h; 
$minutes = $diff->i; 

$total_difference = $days + ($hours * 60 + $minutes)/1440; 

echo $total_difference; 

또는, DateInterval없이 : 사용

$dateOld = new DateTime("2017-01-10 23:38"); 
$dateNew = new DateTime("2017-01-12 17:21"); 

$difference_in_seconds = $dateNew->getTimestamp() - $dateOld->getTimestamp(); 

$total_difference_in_days = $difference_in_seconds/86400; 

echo $total_difference_in_days; 

-> 형식 ("% a는") 당신에게 줄 것이다 일 반올림.

http://php.net/manual/en/datetime.diff.php을 참조하십시오.

0
$dateNew = '2017-01-11 17:21'; 
$dateOld = '2017-01-10 23:38'; 


$dateNew = new DateTime($dateNew); 
$dateOld = new DateTime($dateOld); 

$diff = $dateNew->diff($dateOld); 

echo $diff->format("%H:%I"); 

출처 : http://php.net/manual/en/datetime.diff.php