메뉴 건너뛰기

프로그램언어

2017.03.06 20:17

PHP 만년달력 소스

조회 수 17063 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
<?

/*
▶ 만년달력 

$y : 년 
$m : 월 

$a : 각 달의 날수 
$a[$m-1] : 해당 월의 날수 
$b : 1년 1월 1일부터 지정한 날짜(년,월)까지의 날수 
$w : 지정한 월의 1일 요일값 (0:일,1:월,~,5:금,6:토) 
$l : 해당 월의 총 주 (반복 횟수) 
$r : 반환값 

for()내에서, 
$s : 시작일 
$e : 종료일 
$o : 주별 임시 
*/


function calendar($y,$m) 
    $a=array(31,28,31,30,31,30,31,31,30,31,30,31); 
    if($y%4==0&&$y%100!=0||$y%400==0)$a[1]++; 
    $b=($y-1)*365+(int)(($y-1)/4)-(int)(($y-1)/100)+(int)(($y-1)/400)+1; 
    $b+=array_sum(array_slice($a,0,$m-1));
$w=$b%7;$l=ceil(($a[$m-1]+$w)/7); 
    $r=str_pad(sprintf('%04d년%02d일',$y,$m),20,' ',STR_PAD_BOTH)."\n"; 
    $r.='일 월 화 수 목 금 토'."\n".str_repeat('   ',$w); // 공백3칸 
    
for ($i=$s=1,$e=7-$w;$i<=$l;$i++,$s=$e+1,$e=$i<$l?$s+6:$a[$m-1]) 
    { 
        for($j=$s,$o='';$j<=$e;$j++)$o.=sprintf('%02d ',$j); 
        $r.=rtrim($o);if($i<$l)$r.="\n"; 
    } 
    
return $r; 
echo '<xmp style="font-family:GulimChe;">'.calendar(2011,2).'</xmp>'; 
?>


calendar(2011,2) 이 부분만 원하는 년도와 월로 바꿔주면 만년 달력으로 사용 가능!!!

List of Articles
번호 제목 날짜 조회 수
240 addslashes — 문자열을 슬래시로 인용 2016.12.23 23083
239 stripslashes — 따옴표 처리한 문자열을 풉니다 2016.12.23 20486
238 stripcslashes — addcslashes()로 인용한 문자열을 되돌림 2016.12.23 20442
237 implode — 문자열로 배열 원소를 결합 2016.12.23 19951
236 mysql_insert_id 2016.12.23 18750
235 mysql_result — 결과 데이터를 반환 2016.12.23 18958
234 parse_ini_file — Parse a configuration file 2016.12.23 19751
233 mysql_affected_rows — 최근 MySQL 작업으로 변경된 행 개수를 얻음 2016.12.23 18806
232 is_array — 변수가 배열인지 확인 2016.12.23 18048
231 ini_get - php.ini에 지정되어 있는 지시어의 값을 읽어온다 2016.12.23 19520
230 class_exists 클래스가 정의되었는지 확인 2016.12.23 19881
229 mysql_real_escape_string 이진 데이터를 입력할 경우 이 함수를 사용해야 함 2016.12.23 18635
228 call_user_func 사용자가 정의한 함수를 호출하여 실행고자 할 때 사용 2016.12.23 21302
227 array_key_exists 배열에서 key가 존재하는지 확인 2016.12.23 22206
226 quotemeta 모든 메타 문자앞에 역슬래쉬를 붙인 문자열을 반환 2016.12.23 20461
225 array_push 배열 끝에 하나 이상의 요소를 추가 2016.12.23 21604
224 glob 현재 디렉토리에서 pattern에 일치하는 경로 이름을 배열로 반환 2016.12.23 19636
223 gd_info 사용 가능한 GD 라이브러리에 대한 정보를 배열로 반환 2016.12.23 17989
222 headers_sent 헤더 전송 여부를 확인 2016.12.23 19405
221 fileatime 파일에 최종적으로 접근한 시간을 반환 2016.12.23 18117
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 17 Next
/ 17

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved