웹마스터 팁
page_full_width" class="col-xs-12" |cond="$__Context->page_full_width">
군대간 친구 남은날짜 계산하기
2003.04.27 18:48
제 친구가 군대간지 한달이 다 되어갑니다.
그래서 제가 대신 친구 홈페이지를 관리해주기로 했는데요.
리뉴얼 하다가 남은날짜를 계산해주면 재미있을 것 같아서 간단히 만들어 보았습니다.
1년을 360일로 계산한다던가 하는 식으로 약간씩 오차가 생길 여지는 있지만,
어차피 군대에서 제대하고 하는게 딱 날짜를 맞춰서 나오는 것도 아니니까
며칠 차이나는건 괜찮겠지요 ^^
휴가까지 며칠 남았다 하는 것도 응용해서 만들어보면 재미있을 것 같습니다 ^^
<?
///////////////////여기에 입력하세요////////////////////
//이름
$name = '강주승';
//입대 날짜 (2003년 3월 26일의 경우)
$enter_year = 2003; //2003년
$enter_month = 3; //3월
$enter_day = 26; //26일
//군복무 기간
$army_term = 26; //26개월 복무
////////////////////////////////////////////////////////
$enter_army_second = mktime(0,0,0,$enter_month,$enter_day,$enter_year); //군대간 날
$being_army_second = time() - $enter_army_second; //군대에서 썩은 날 (그때부터 지금까지)
$being_army_day = (int) ( $being_army_second / 3600 / 24 ); //초를 일로 변환
$being_army_month = (int) ( $being_army_day / 30 ); //일을 개월로 변환
$being_army_year = (int) ($being_army_month / 12 ); //개월을 년으로 변환 (1년을 360일로 계산)
//남은 부분을 없애줍니다.
$being_army_day -= $being_army_month * 30;
$being_army_month -= $being_army_year * 12;
$army_term_second = (3600 * 24) * 30 * $army_term; //군대에 있을 기간을 초로 구함
$army_left_second = $army_term_second - $being_army_second; //남은 기간을 구함
$army_left_day = (int) ( $army_left_second / 3600 / 24 ); //초를 일로 변환
$army_left_month = (int) ( $army_left_day / 30 ); //일을 개월로 변환
$army_left_year = (int) ($army_left_month / 12 ); //개월을 년으로 변환 (1년을 360일로 계산)
//남은 부분을 없애줍니다.
$army_left_day -= $army_left_month * 30;
$army_left_month -= $army_left_year * 12;
//출력 부분
echo "$name 님은 $enter_year 년 $enter_month 월 $enter_day 일에 입대하셨습니다.<br/>";
echo "입대한 후로 ";
if($being_army_year > 0) { echo "$being_army_year 년 "; }
if($being_army_month > 0) { echo "$being_army_month 개월 "; }
echo "$being_army_day 일이 지났습니다.<br/>"; //최소 0일은 지났으므로 반드시 표시해줌
if($army_left_second < 0)
{
echo "제대 예정일이 지났습니다.";
}
else
{
echo "제대까지 앞으로 ";
if($army_left_year > 0) { echo "$army_left_year 년 "; }
if($army_left_month > 0) { echo "$army_left_month 개월 ";}
echo "$army_left_day 일이 남았습니다.";
}
?>
그래서 제가 대신 친구 홈페이지를 관리해주기로 했는데요.
리뉴얼 하다가 남은날짜를 계산해주면 재미있을 것 같아서 간단히 만들어 보았습니다.
1년을 360일로 계산한다던가 하는 식으로 약간씩 오차가 생길 여지는 있지만,
어차피 군대에서 제대하고 하는게 딱 날짜를 맞춰서 나오는 것도 아니니까
며칠 차이나는건 괜찮겠지요 ^^
휴가까지 며칠 남았다 하는 것도 응용해서 만들어보면 재미있을 것 같습니다 ^^
<?
///////////////////여기에 입력하세요////////////////////
//이름
$name = '강주승';
//입대 날짜 (2003년 3월 26일의 경우)
$enter_year = 2003; //2003년
$enter_month = 3; //3월
$enter_day = 26; //26일
//군복무 기간
$army_term = 26; //26개월 복무
////////////////////////////////////////////////////////
$enter_army_second = mktime(0,0,0,$enter_month,$enter_day,$enter_year); //군대간 날
$being_army_second = time() - $enter_army_second; //군대에서 썩은 날 (그때부터 지금까지)
$being_army_day = (int) ( $being_army_second / 3600 / 24 ); //초를 일로 변환
$being_army_month = (int) ( $being_army_day / 30 ); //일을 개월로 변환
$being_army_year = (int) ($being_army_month / 12 ); //개월을 년으로 변환 (1년을 360일로 계산)
//남은 부분을 없애줍니다.
$being_army_day -= $being_army_month * 30;
$being_army_month -= $being_army_year * 12;
$army_term_second = (3600 * 24) * 30 * $army_term; //군대에 있을 기간을 초로 구함
$army_left_second = $army_term_second - $being_army_second; //남은 기간을 구함
$army_left_day = (int) ( $army_left_second / 3600 / 24 ); //초를 일로 변환
$army_left_month = (int) ( $army_left_day / 30 ); //일을 개월로 변환
$army_left_year = (int) ($army_left_month / 12 ); //개월을 년으로 변환 (1년을 360일로 계산)
//남은 부분을 없애줍니다.
$army_left_day -= $army_left_month * 30;
$army_left_month -= $army_left_year * 12;
//출력 부분
echo "$name 님은 $enter_year 년 $enter_month 월 $enter_day 일에 입대하셨습니다.<br/>";
echo "입대한 후로 ";
if($being_army_year > 0) { echo "$being_army_year 년 "; }
if($being_army_month > 0) { echo "$being_army_month 개월 "; }
echo "$being_army_day 일이 지났습니다.<br/>"; //최소 0일은 지났으므로 반드시 표시해줌
if($army_left_second < 0)
{
echo "제대 예정일이 지났습니다.";
}
else
{
echo "제대까지 앞으로 ";
if($army_left_year > 0) { echo "$army_left_year 년 "; }
if($army_left_month > 0) { echo "$army_left_month 개월 ";}
echo "$army_left_day 일이 남았습니다.";
}
?>
댓글 6
-
simplish
2003.04.27 20:02
-ㅁ-; 대단해요;; -
김성수
2003.04.28 12:38
친구를 위해 노력하는 모습이 정말 아름답습니다... ^^;; -
TheMics
2003.04.29 12:31
<?
$y = 2004;
$m = 11;
$d = 10;
$today = mktime(0,0,0,date("m"),date("d"),date("Y"));
$exam = mktime(0,0,0,$m,$d,$y);
$left = intval(($exam - $today) / 86400);
echo $left;
?>
아는 형 수능날짜(2005년도 수능)계산을 위해 만든걸로 목표날짜까지 며칠 남았는지 나오는겁니다..날짜단위로만 나와요;ㅁ; -
∠ 요건몇도고? :)
2003.05.23 21:47
믹스// 이미 블래형 홈페이지에서 보았 >_< -
BelldandY
2003.07.14 16:45
-
zero
2003.08.11 15:22
여자시군요..-_-;;
제목 | 글쓴이 | 날짜 |
---|---|---|
군대간 친구 남은날짜 계산하기 [6] | xacdo | 2003.04.27 |
유용한 일반 함수 모음;ㅁ; [11] | TheMics | 2003.04.23 |
노프레임+프레임없이 접근막기+게시물 링크하기 [3] | teslaMINT | 2003.04.20 |
PHP 혼자 공부하기 - 12 :: SQL문 [6] | 행복한고니 | 2003.04.20 |
데이터베이스, PHP를 만나면「알짜 사이트로 부활!」 [1] | .maya | 2003.04.18 |
[mics'php] 2. PHP 사용 시스템 구축하기 [3] | TheMics | 2003.04.17 |
[mics'php] 1. PHP란? [8] | TheMics | 2003.04.16 |
PHP 혼자 공부하기 - 11 :: 정규식 실전예제 [9] | 행복한고니 | 2003.04.16 |
PHP 혼자 공부하기 - 10 :: 정규식 패턴 문법 [3] | 행복한고니 | 2003.04.15 |
PHP 혼자 공부하기 - 9 :: 정규식 함수 [3] | 행복한고니 | 2003.04.14 |
PHP 혼자 공부하기 - 8 :: 시간다루기 [18] | 행복한고니 | 2003.04.13 |
PHP 혼자 공부하기 - 7 :: 제어문과 함수 [7] | 행복한고니 | 2003.04.12 |
[mics'php] 들어가기 전에 [1] | TheMics | 2003.04.11 |
PHP 혼자 공부하기 - 6 :: 연산자 [7] | 행복한고니 | 2003.04.11 |
PHP 혼자 공부하기 - 5 :: 변수 [4] | 행복한고니 | 2003.04.10 |
PHP 혼자 공부하기 - 4 :: 미리 정의된 변수 [13] | 행복한고니 | 2003.04.09 |
PHP 혼자 공부하기 - 3 :: 변수형 [8] | 행복한고니 | 2003.04.09 |
PHP 혼자 공부하기 - 2 :: PHP의 시작 [9] | 행복한고니 | 2003.04.09 |
PHP 혼자 공부하기 - 1 :: 준비물 [3] | 행복한고니 | 2003.04.09 |
개판 오분전 세션 - 7 [10] | 미친개 | 2003.04.08 |