는 다음 테스트 케이스를 고려DateTime :: diff가이 날짜 사이에 0 일을 반환하는 이유는 무엇입니까?
$start = new DateTime("2011-02-25");
$end = new DateTime("2011-03-25");
$interval = $end->diff($start);
echo "INTERVAL = ".$interval->format("%d"); // Should give me the
// interval in days, right?
echo "START = ".$start->format("Y-m-d");
echo "END = ".$end->format("Y-m-d");
결과는 다음과 같습니다
INTERVAL = 0 <---------- WTF????
START = 2011-02-25
END = 2011-03-25
diff()
월 25 일, 2011 년 3 월 (25) 2011 년 사이의 기간 0 일이라고 주장하는 것 같다!
나는 뭔가를 내려야 만합니다. 하지만 무엇?
또한 나는 같은 순서로'$ interval = $ start-> diff ($ end);'를 뒤집어 썼다. –
이 말을하는 것이 놀랍지 만 설명서의 예제 # 3을 참조하십시오. http://php.net/manual/en/dateinterval.format.php :) – deceze
@deceze 예, 이제 알았습니다. :) 나는 아직도'd'가 정직하기로되어있는 것을 이해하는데 어려움을 겪고있다. 어쨌든, 그것은 작동합니다! (** 편집 ** 이제는 이해합니다 : 달력 일의 차이입니다.) –