공부가

phpt날짜계산

· 2015-09-02 (수) 11:55:00 · 731 · 3

예: 날짜1  20150902

    날짜2  20150907

날짜1에서 날짜2까지 몇일 남았습니다. PHP 로 어떻게 계산해 내죠 ?

날짜2 - 날짜1 하니깐  월로 넘어가면 문제가 생기더라구요 

30일 하고 31이 있어서요

|

댓글 3개

다음부터는 QA 에 남겨주시면 감사하겠습니다.

영카트5에 lib/shop.lib.php 라는 파일에

// 타임스탬프 형식으로 넘어와야 한다.
// 시작시간, 종료시간
function gap_time($begin_time, $end_time)
{
$gap = $end_time - $begin_time;
$time['days'] = (int)($gap / 86400);
$time['hours'] = (int)(($gap - ($time['days'] * 86400)) / 3600);
$time['minutes'] = (int)(($gap - ($time['days'] * 86400 + $time['hours'] * 3600)) / 60);
$time['seconds'] = (int)($gap - ($time['days'] * 86400 + $time['hours'] * 3600 + $time['minutes'] * 60));
return $time;
}

이라는 함수가 있습니다.

이것을 참고하여

<?php

// 타임스탬프 형식으로 넘어와야 한다.
// 시작시간, 종료시간
function gap_time($begin_time, $end_time)
{
$gap = $end_time - $begin_time;
$time['days'] = (int)($gap / 86400);
$time['hours'] = (int)(($gap - ($time['days'] * 86400)) / 3600);
$time['minutes'] = (int)(($gap - ($time['days'] * 86400 + $time['hours'] * 3600)) / 60);
$time['seconds'] = (int)($gap - ($time['days'] * 86400 + $time['hours'] * 3600 + $time['minutes'] * 60));
return $time;
}

$a = strtotime('20150902');
$b = strtotime('20150907');

print_r( gap_time($a, $b) );
?>

이런 코드를 작성하면

Array ( [days] => 5 [hours] => 0 [minutes] => 0 [seconds] => 0 )

와 같이 결과가 출력되는것을 확인하실수 있습니다.
간단한 소스 찾아서 이미 수정 하였습니다 ^^
댓글을 작성하시려면 로그인이 필요합니다.

개발자톡

1,532건
+
제목 글쓴이 날짜 조회
15-10-26 조회 1,437
15-10-14 조회 1,434
15-10-07 조회 2,143
15-10-05 조회 1,057
15-10-05 조회 1,709
15-10-02 조회 1,145
15-09-25 조회 1,484
15-09-25 조회 1,307
15-09-18 조회 1,952
15-09-17 조회 1,879
15-09-16 조회 1,231
15-09-13 조회 1,644
15-09-11 조회 689
15-09-09 조회 1,229
15-09-08 조회 758
15-09-05 조회 739
15-09-04 조회 846
15-09-02 조회 732
15-08-29 조회 862
15-08-24 조회 996
15-08-23 조회 1,166
15-08-21 조회 745
15-08-21 조회 776
15-08-20 조회 1,026
15-08-20 조회 972