공부가

phpt날짜계산

· 2015-09-02 (수) 11:55:00 · 716 · 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,418
15-10-14 조회 1,419
15-10-07 조회 2,126
15-10-05 조회 1,044
15-10-05 조회 1,692
15-10-02 조회 1,130
15-09-25 조회 1,465
15-09-25 조회 1,291
15-09-18 조회 1,937
15-09-17 조회 1,866
15-09-16 조회 1,215
15-09-13 조회 1,630
15-09-11 조회 675
15-09-09 조회 1,214
15-09-08 조회 742
15-09-05 조회 721
15-09-04 조회 834
15-09-02 조회 717
15-08-29 조회 848
15-08-24 조회 983
15-08-23 조회 1,152
15-08-21 조회 730
15-08-21 조회 759
15-08-20 조회 1,011
15-08-20 조회 959