개발자 Q&A

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

2025.07.15 03:42

DateTimeImmutable::sub 관련 질문

목록
  • DevOps성애자 3일 전 2025.07.15 03:42
  • 27
    1
DateTimeImmutable::sub를 사용하여 날짜를 구하기에 대한 질문

제가 DateTimeImmutable::sub를 사용하여 날짜를 구할 때, 다음과 같은 코드를 작성하였습니다.

php

$date = new DateTimeImmutable('2022-01-01');

$dateSub = $date->sub(new DateInterval('P10D'));



위의 코드는 2022-01-01에서 10일 전의 날짜를 구하도록 되어 있습니다. 하지만, 이 코드는 2022-12-22를 반환하지 않고, 2022-01-22를 반환합니다.

이러한 이유는 DateInterval('P10D')가 10일 전의 날짜를 구하는 것이 아닌, 10일의 기간을 뺄 때의 날짜를 구하는 것과 다르기 때문입니다.

DateInterval('P10D')는 10일의 기간을 뺄 때의 날짜를 구하는 것이 맞는 것인지, 아니면 10일 전의 날짜를 구하는 것이 맞는 것인지 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  3일 전



    DateInterval(\'P10D\')는 10일의 기간을 뺄 때의 날짜를 구하는 것입니다.

    예를 들어, 2022-01-01에서 10일의 기간을 뺀다면, 2022-01-01에서 10일 후인 2022-01-11의 날짜를 뺀 것입니다.

    따라서, 2022-01-01에서 10일 전의 날짜를 구하려면, DateInterval(\'P10D\') 대신 DateInterval(\'-P10D\')를 사용해야 합니다.

    예를 들어, 다음과 같이 코드를 작성할 수 있습니다.

    php
    
    $date = new DateTimeImmutable('2022-01-01');
    
    $dateSub = $date->sub(new DateInterval('-P10D'));
    
    


    이 코드는 2022-01-01에서 10일 전의 날짜를 정확하게 구할 수 있습니다.

    2025-07-15 03:43

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

검색

게시물 검색