웹마스터 팁

제 친구가 군대간지 한달이 다 되어갑니다.
그래서 제가 대신 친구 홈페이지를 관리해주기로 했는데요.

리뉴얼 하다가 남은날짜를 계산해주면 재미있을 것 같아서 간단히 만들어 보았습니다.

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 일이 남았습니다.";
}
?>