>  Q&A  >  본문

두 날짜를 Unix 타임스탬프로 변환하여 PHP에서 시간차(초)를 계산할 때 예상치 못한 결과가 발생합니다.

<p>제목에 따라 초 단위의 차이를 찾은 다음 해당 초를 일과 시간으로 변환하려고 합니다. </p> <p>비슷한 질문을 읽고 따라한 끝에 오늘 날짜/시간에 내가 원하는 시, 일, 주, 월, 연도를 추가하는 함수를 만들었고 이 부분에서 올바른 결과를 얻었습니다. </p> <p> 그러나 그런 다음 두 날짜(시작 날짜 및 이동 날짜)를 유닉스 타임스탬프로 변환하고 두 날짜의 차이를 초 단위로 찾기 위해 두 타임스탬프를 뺀 다음 변환을 시도했지만 예상한 결과를 얻지 못했습니다. 며칠 또는 몇 분 동안(/86400 및 /3600). </p> <p>코드는 이렇습니다..</p> <pre class="brush:php;toolbar:false;"><?php $dateTimeNow = 날짜(); 함수 dateTimeShift($dateTimeIn, $lengthNum, $lengthWord) { $shifted = date("Y-m-d H:i:s", strtotime($dateTimeIn." + $lengthNum $lengthWord")); $difference = strtotime($shifted)-strtotime($dateTimeIn); $shifted . " .floor($difference/3600) . } echo dateTimeShift($dateTimeNow, "1", "일"); ?></pre> <p>현재 결과는..</p> <인용문> <p>2023-01-04 09:37:51 > 19361일 또는 464673시간</p> </인용문> <p>이런 상황일 거라고 예상했어요</p> <인용문> <p>2023-01-04 09:37:51 > 1일 또는 24시간

</blockquote></p>
P粉237029457P粉237029457385일 전492

모든 응답(1)나는 대답할 것이다

  • P粉769413355

    P粉7694133552023-09-04 00:23:10

    문제는 매개 변수 없이 date() 함수를 사용하고 있다는 것입니다. 다음을 사용해 보세요.

    으아악

    출력:

    으아악

    회신하다
    0
  • 취소회신하다