<?php $selectedDay = date( 'd'); $selectedMonth = date( 'm'); $selectedYear = date( 'Y'); //获取当月第一天是数值型星期几 $firstday = date( 'w',mktime(0,0,0,$selectedMonth,1,$selectedYear)); //找出本月最后一天 $lastday = 31; do { $monthOrig = date( 'm',mktime(0,0,0,$selectedMonth,1,$selectedYear)); $monthTest = date( 'm',mktime(0,0,0,$selectedMonth,$lastday,$selectedYear)); if ($monthTest != $monthOrig) { $lastday -= 1; } } while ($monthTest != $monthOrig); //获取当月对应的英文名 $monthName = date( 'F',mktime(0,0,0,$selectedMonth,1,$selectedYear)); //显示日历表头 $days = array("星期日","星期一","星期二","星期三","星期四","星期五","星期六"); $dayRow = 0; print( "<table bgcolor="#bbFFFF">"); print( "<caption valign="center"><b>$monthName $selectedYear</b></caption>"); print( "<tr>n"); for($i=0; $i<=6; $i++) { print( "<td width=10%>$days[$i]</td>n"); } print( "</tr>n"); print( "<tr>n"); //空出当月第一天前面的空位 while($dayRow <$firstday) { print( "<td><!-- This day in last month --></td>"); $dayRow += 1; } $day = 0; while($day <$lastday) { //下面的判断语句用于每显示7个时间位置转换到下一行 if(($dayRow % 7) == 0) { print( "</tr>n<tr>n"); } $adjusted_day = $day+1; //当天的日期用红色显示 if($adjusted_day==$selectedDay){ echo "<td><font color=#ff0000>$adjusted_day</font></td>"; } else{echo "<td>$adjusted_day</td>";} $day += 1; $dayRow += 1; } print( "n</tr>n</table>"); ?> |