묻고답하기

아래는 제 홈페이지에 걸려 있는 달력 표시 부분의 소스입니다.

아래 소스를 보시면 아시겠지만, 토요일은 파란색, 일요일은 빨간색으로 표시가 되는데

여기다가 양력 법적 공휴일(설날, 추석 제외)인

신정, 삼일절, 어린이날, 현충일, 제헌절, 광복절, 개천절, 성탄절에 대해서도 빨간색으로 표시하고 싶거든요.

아래에 소스를 첨부할테니 신정부분(양력 1.1)만 지도해주시면 나머지는 제가 알아서 하도록 하겠습니다.

<?
//넘어오는 값이 없을 경우 이번달의 달력을 표시
if(!$y) $y = date("Y");
if(!$m) $m = date("n");

//날짜 체크
if($y < 1970 or $m < 1 or $m > 12) die("정상적인 날짜를 입력해주세요.");

//이전/다음 달 계산
//기본적으로 년도는 올해와 같게, 이전/다음달은 현재 달에서 +1,-1한 값으로 설정
$b_y = $y;
$n_y = $y;
$b_m = $m - 1;
$n_m = $m + 1;

//1월이면 이전달은 12, 이전해는 현재 해 -1
//12월이면 다음달은 1, 다음해는 현재 해 +1로 변경
if($m == 1) {
        $b_y = $y - 1;
        $b_m = 12;
} elseif($m == 12) {
        $n_y = $y + 1;
$n_m = 1;
}

//이번 달 마지막날 구함
$last_day = date("t",mktime(0,0,0,$m,1,$y));

//이번 달 첫 요일/마지막 요일을 숫자로 리턴한 값 구함
$start = date("w",mktime(0,0,0,$m,1,$y));
$end = date("w",mktime(0,0,0,$m,$last_day,$y));

//달력 넘기는 링크, 년/월, 요일 등 날짜 위 부분 표시
$print = "<tr><td><a href='$PHP_SELF?y=$b_y&m=$b_m'>◀</a></td>".
         "<td colspan='5' align='center'>${y}년 ${m}월</td>".
                 "<td><a href='$PHP_SELF?y=$n_y&m=$n_m'>▶</a></td></tr>n".
                 "<tr><td><font color='red'>일</font></td><td>월</td><td>화</td><td>수</td>".
                 "<td>목</td><td>금</td><td><font color='blue'>토</font></td></tr>";

//달력 시작 부분 빈칸 표시
//현재 달의 시작 요일이 일요일이 아니면 해당 만큼 colspan을 줌
if($start != 0) $print .= "<tr><td colspan='$start'></td>";

for($i = 1;$i <= $last_day;$i++) {
        //1일부터 마지막 날까지 루프를 돌아 해당만큼 <td>를 줌
        //일요일이면 <tr>을 넣어줌
        $s = mktime(0,0,0,$m,$i,$y);

        $t = "";
        $p = $i;

//오늘은 <b>로 강조
if($y == date("Y") and $m == date("m") and $i == date("d")) $p = "<b>$p</b>";

        //일요일은 빨간색, 토요일은 파란색으로 강조 및 각각 <tr>과 </tr>넣어줌
        if(date("w",$s) == 0) {
                $p = "<font color='red'>$p</font>";
                $print .= "<tr>";
        } elseif(date("w",$s) == 6) {
                $p = "<font color='blue'>$p</font>";
                $t = "</tr>n";
        }

        $print .= "<td>$p</td>$t";
}

//달력 끝부분 빈칸 표시
//토요일이 아니면 6 - 요일 숫자만큼 빈칸을 줌
if($end != 6) $print .= "<td colspan='".(6 - $end)."'></td></tr>";
        echo($print);
?>
글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
장하늘 슬라이스 툴에 관해서.. [1] 2007.08.10
고정수 외부로그인에 대한 질문입니다. 고수님들 답변부탁드려요. [2] 2007.08.10
이태 포토샵에서 화면 정확하게 6분할 하고 싶은데요. [1] 2007.08.10
우라질넘 iframe 자동높이조절 스크립트 중에서... [1] 2007.08.10
나나야 팝업창이 쿠키를지워야 띄워집니다.ㅠ  
유진 프레임으로 나누고 점선을 넣고 싶거든요  
오진호 input tpe=submit , input type=button 투명하게 할려면 [1] 2007.08.10
Nooloongji 이 소스를 수정하고 싶은데요.. 될까요?  
유령 소스 확인 부탁드립니다 [2] 2007.08.10
이규호 [PHP] form 을 이용한 텍스트 정보와 파일 한번에 업로드하기에 문제가;  
김경태 게시판 합산 출력 방법 조언 부탁드립니다. [1] 2007.08.10
성아~ 플레쉬 게시판 db연동에 대해서요...  
싸이 추천수 많은 갤러리 뽑는 최근게시물 [1] 2007.08.10
서향 웹폰트 적용에 대해  
오홍택 롤오버 이미지에 대한 질문입니다.  
최우선 제 홈페이지에 아무래도 악성코드가 있는거 같은데요.. [2] 2007.08.10
오진호 [질문] 파일에 메모 저장할려면? [3] 2007.08.10
하우하우 윈앰프 주소가지고 오기 쏘스 질문  
Jay Song MySQL 백업을 하고 다시 복원을 하는데, 한글이 깨집니다.  
정말정말 팝업창이 어느땐 띄어지고 어느땐 안뜨고 그래여..  
열외 일반 페이지에 권한주는 방법좀 알려주세요 [2] 2007.08.10
안성경 랭킹페이지 만들기...  
빵순이 제로보드에서 그림이 클릭되는데... [2] 2007.08.10
청마루 제로보드 글번호 50000번호부터 시작하기 [2] 2007.08.10
우제욱 검색어 자동완성 질문입니다 [1] 2007.08.10
허헌 테이블 합칠 때, 이렇게는 안되나요? [1] 2007.08.10
로베르토 베니니 간단 주문 게시판 (오류 수정 요청)  
이증규 그림여백이 남아서 [1] 2007.08.10
요정 개체가 필요합니다. 에러가 뜹니다.  
문광화 달력에 법적 공휴일도 빨간색으로 표시 하고 싶어요~ [2] 2007.08.10