개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.14 13:11

DateTimeInterface::diff 사용에 대한 질문

목록
  • GCP전문가 2일 전 2025.04.14 13:11
  • 8
    1
저는 DateTimeInterface::diff 함수를 사용하여 두 날짜 사이의 차이를 계산하려고 합니다. 하지만, 이 함수의 반환값인 DateInterval 객체의 속성을 사용할 때 막히게 되었습니다.

DateInterval 객체의 속성을 사용할 때, 속성 이름을 어떻게 알 수 있으며, 속성 이름이 정해져 있는지 궁금합니다.

또한, DateInterval 객체의 속성을 사용하여 날짜 사이의 차이를 계산하는 방법을 알려주시면 감사하겠습니다.

예를 들어, 두 날짜 사이의 일 차이, 시간 차이, 분 차이, 초 차이를 계산하는 방법을 알려주시면 좋겠습니다.

아래는 예시 코드입니다.

php

$date1 = new DateTime('2022-01-01 00:00:00');

$date2 = new DateTime('2022-01-02 00:00:00');



$interval = $date1->diff($date2);



var_dump($interval);



위 코드의 결과는 DateInterval 객체의 속성을 사용하여 날짜 사이의 차이를 계산하는 방법을 알려주시면 감사하겠습니다.

위 코드의 결과는 다음과 같습니다.

php

object(DateInterval)#2 (15) {

  ["y"]=> int(0)

  ["m"]=> int(0)

  ["d"]=> int(1)

  ["h"]=> int(0)

  ["i"]=> int(0)

  ["s"]=> int(0)

  ["invert"]=> int(1)

  ["days"]=> int(1)

}



위 결과에서, 속성 이름을 어떻게 알 수 있으며, 속성 이름이 정해져 있는지 궁금합니다.

또한, 위 결과에서, 일 차이, 시간 차이, 분 차이, 초 차이를 계산하는 방법을 알려주시면 감사하겠습니다.

위 결과에서, 일 차이는 1일, 시간 차이는 0시간, 분 차이는 0분, 초 차이는 0초인 것을 확인할 수 있습니다.

위 결과에서, 일 차이, 시간 차이, 분 차이, 초 차이를 계산하는 방법을 알려주시면 감사하겠습니다.

위 결과에서, 일 차이, 시간 차이, 분 차이, 초 차이를 계산하는 방법은 다음과 같습니다.

```php

    댓글목록

    profile_image
    나우호스팅  2일 전



    DateInterval 객체의 속성을 사용할 때, 속성 이름은 다음과 같습니다.

    - y : 년 차이
    - m : 월 차이
    - d : 일 차이
    - h : 시간 차이
    - i : 분 차이
    - s : 초 차이
    - invert : 차이의 방향 (1 : 앞 날짜가 뒤 날짜보다 앞, -1 : 뒤 날짜가 앞 날짜보다 앞)
    - days : 일 차이

    위 결과에서 일 차이, 시간 차이, 분 차이, 초 차이를 계산하는 방법은 다음과 같습니다.

    #hostingforum.kr
    php
    
    $date1 = new DateTime('2022-01-01 00:00:00');
    
    $date2 = new DateTime('2022-01-02 00:00:00');
    
    
    
    $interval = $date1->diff($date2);
    
    
    
    $yearDiff = $interval->y;
    
    $monthDiff = $interval->m;
    
    $dayDiff = $interval->d;
    
    $hourDiff = $interval->h;
    
    $minuteDiff = $interval->i;
    
    $secondDiff = $interval->s;
    
    
    
    echo "년 차이 : $yearDiffn";
    
    echo "월 차이 : $monthDiffn";
    
    echo "일 차이 : $dayDiffn";
    
    echo "시간 차이 : $hourDiffn";
    
    echo "분 차이 : $minuteDiffn";
    
    echo "초 차이 : $secondDiffn";
    
    


    위 코드를 실행하면 년 차이, 월 차이, 일 차이, 시간 차이, 분 차이, 초 차이가 출력됩니다.

    2025-04-14 13:12

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 11,962건 / 16 페이지

검색

게시물 검색