달력 출력하기 > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

달력 출력하기 정보

PHP 달력 출력하기

본문

<HTML>
<HEAD>
<TITLE>title</TITLE>
</HEAD>
<STYLE type='text/css'>
A:link {color:black;text-decoration:none;}
A:visited {color:black;text-decoration:none;}
A:hover {color:#0066cc;text-decoration:none;}
p,br,body,td {font-size:9pt;}
color:#0099cc; background-color:white}
</STYLE>

<BODY>
<TABLE width = '100%' height = '100%'>
<TR>
<TD align = 'center'>
<?php

if (!$year)
$year = date("Y");
    if (!$month)
    $month = date("m");

$day = 1;
$spacer = spacer( $year, $month, $day );
$endday = array( 31, 28, 31, 30 , 31, 30, 31, 31, 30 ,31 ,30, 31 );

    if( $year%4 == 0 && $year%100 != 0 || $year%400 == 0 )
        $endday[1] = 29;
        else
        $endday[1] = 28;


echo("
    <FONT color='#0066cc'>${year}년</FONT>
    <TABLE>
    <TR>
    <TD colspan = 7>
    ");
    for( $i = 1; $i <= 12; $i++ )
    {
        if( $i == $month )
        {
        echo("<A href = '$PHP_SELF?year=$year&month=$i'><FONT color='red'>${i}월 </FONT></A>");
        }
        else
        echo("<A href = '$PHP_SELF?year=$year&month=$i'>${i}월 </A>");
    }
echo("
    </TD>
    </TR>
    </TABLE>
    
    <TABLE>
    <TR>
    <TD align='center'>일</TD>
    <TD align='center'>월</TD>
    <TD align='center'>화</TD>
    <TD align='center'>수</TD>
    <TD align='center'>목</TD>
    <TD align='center'>금</TD>
    <TD align='center'>토</TD>
    </TR>
    <TR>
    ");

for( $i = 0; $i < $spacer; $i++ )
{
    echo("
        <TD> </TD>
        ");
    $tr++;
}


for( $i = 1; $i <= $endday[$month-1]; $i++ )
{
    if( $tr % 7 == 0 )
    {
        echo("
        </TR>
        <TR>
        <TD align = 'right'>$i</TD>
        ");
        $tr++;

    }
    else
    {
        echo("
            <TD align = 'right'>$i</TD>
            ");
        $tr++;
    }
}

$next_year = $year + 1;
$priv_year = $year - 1;
$next_year_ten = $next_year + 9;
$priv_year_ten = $priv_year - 9;


echo("
    </TR>
    </TABLE>

    <A href = '$PHP_SELF?year=$priv_year_ten&month=$month'> << </A>
        
    <A href = '$PHP_SELF?year=$priv_year&month=$month'> [-1] </A>
      
    <A href = '$PHP_SELF?year=$next_year&month=$month'> [+1] </A>
        
    <A href = '$PHP_SELF?year=$next_year_ten&month=$month'> >> </A>

    ");

        
function spacer( $year, $month, $day )
{
    $spacer = array(0, 3, 2, 5, 0, 3, 5, 1, 4, 6, 2, 4);
    $year = $year - ($month < 3);
    $result = ($year + (int) ($year/4) - (int) ($year/100) + (int) ($year/400) + $spacer[$month-1] + $day) % 7;
    return $result;
}
?>
</TD>
</TR>
</BODY>
</HTML>
추천
0

댓글 0개

전체 3

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT