본문 바로가기

개발도구/PHP,ASP,JSP,SCRIPT

[PHP] PHP 날짜 달력 시간 완결판 소스

<? 

//기본 날짜 세팅 - 이 부분을 날짜를 바꿔가면서 테스트 하시면 됩니다. 


echo "현재 년 (4자리): " . date("Y") . "<br />\n";

echo "현재 년 (2자리): " . date("y") . "<br />\n";


echo "\n<br /><br />\n\n"; // 줄바꿈


echo "현재 월: " . date("n") . "<br />\n";

echo "현재 월 (2자리): " . date("m") . "<br />\n";


echo "\n<br /><br />\n\n";


echo "현재 일: " . date("j") . "<br />\n";

echo "현재 일 (2자리): " . date("d") . "<br />\n";


echo "\n<br /><br />\n\n";


echo "현재 시 (24시간제): " . date("G") . "<br />\n";

echo "현재 시 (24시간제) (2자리): " . date("H") . "<br />\n";


echo "\n<br /><br />\n\n";


echo "현재 시 (12시간제): " . date("g") . "<br />\n";

echo "현재 시 (12시간제) (2자리): " . date("h") . "<br />\n";


echo "\n<br /><br />\n\n";


echo "현재 분 (2자리): " . date("i") . "<br />\n";


echo "\n<br /><br />\n\n";


echo "현재 초 (2자리): " . date("s") . "<br />\n";


echo "\n<br /><br />\n\n";


echo "오전/오후 (대문자): " . date("A") . "<br />\n";

echo "오전/오후 (소문자): " . date("a") . "<br />\n";



echo "\n<br /><br />\n\n";


echo "오늘 요일 번호 (일요일=0): " . date("w") . "<br />\n";




$year = date("Y"); 

$month = date("m"); 

$day = date("d"); 


$nowday = mktime(0,0,0,$month, $day, $year); 

//오늘 

$today = date("Y.m.d", $nowday); 

//일주일전 

$prev_week = date("Y.m.d", mktime(0,0,0,$month, $day-7, $year)); 

//일주일후 

$next_week = date("Y.m.d", mktime(0,0,0,$month, $day+7, $year)); 

//이번달 마지막 날짜? 

$last_day = date("t",$nowday); 

//이번달은 몇 주? 

//$month_week1 = date('t', mktime()); 

$month_week = date("t", mktime()); 

$month_week = $month_week / 7; 

//$month_week1 = ceil($month_week1 /7); 

$month_week = ceil($month_week); 

//현재 요일 

$now_week_day = date("w", mktime(0,0,0, $month, $day, $year)); 

$w_d[0] = "일요일"; 

$w_d[1] = "월요일"; 

$w_d[2] = "화요일"; 

$w_d[3] = "수요일"; 

$w_d[4] = "목요일"; 

$w_d[5] = "금요일"; 

$w_d[6] = "토요일"; 


//마지막 날의 요일을 구한다. 

$end_week_day = date("w", mktime(0,0,0, $month, $last_day, $year)); 


if($day >= 1 && $day <= $now_week_day+1){//현재주가 시작 주이면 

$start_day = date("Y.m.d", mktime(0,0,0, $month, 1, $year)); 

$end_day = date("Y.m.d", mktime(0,0,0,$month, $day + (6-$now_week_day), $year)); 

}elseif($day >= ($last_day - ($end_week_day+1)) && $day <= $last_day){//현재주가 마지막 주이면 

$start_day = date("Y.m.d", mktime(0,0,0, $month, ($day - $now_week_day), $year)); 

$end_day = date("Y.m.d", mktime(0,0,0,$month, $last_day, $year)); 

}else{ 

$start_day = date("Y.m.d", mktime(0,0,0, $month,  $day - $now_week_day, $year)); 

$end_day = date("Y.m.d", mktime(0,0,0,$month, $day + (6-$now_week_day), $year)); 



echo " 

오늘  : $today <br> 

일주일전 : $prev_week <br> 

일주일후 : $next_week <br> 

이번달 마지막 날짜? : $last_day <br> 

이번달은 몇 주? : $month_week <br> 

현재 요일? : $w_d[$now_week_day] <br> 

이번주 시작일 날짜? : $start_day <br> 

이번주 마지막 날짜? : $end_day <br> 

"; 

?>