本文分享一例php实现的简单日历代码,有闰年与二月特殊月份的判断,有需要的朋友参考下吧。 php简单日历代码,分享给大家。代码: 复制代码 代码示例://calendar.php<? /***************…,
本文分享一例php实现的简单日历代码,有闰年与二月特殊月份的判断,有需要的朋友参考下吧。
php简单日历代码,分享给大家。
代码:
//calendar.php <? /******************************* * 判断是否闰年的函数 * * 可以根据更复杂的算法改进 * *******************************/ function leap_year($year) { if($year% 4 == 0) // basic rule { return true; // is leap year } else { return false; } } /******************************* * 对一些变量进行赋值操作 * * 特别注意对二月份的赋值 * *******************************/ function setup() { global $mon_num; $mon_num=array(31,30,31,30,31,30,31,31,30,31,30,31); global $mon_name; $mon_name=array("一","二","三","四", "五","六","七","八", "九","十","十一","十二"); if (leap_year($firstday[year])) // basic rule { $mon_num[1]=29; // is leap year } else { $mon_num[1]=28; } } /******************************* * 显示表格中的一格 * * 显示的内容和颜色可变 * *******************************/ function showline($content,$show_color) { $begin_mark = "<TD WIDTH=60 HEIGHT=25>"; $begin_mark =$begin_mark."<FONT COLOR=$show_color>"; $end_mark = "</FONT></TD>"; echo $begin_mark.$content.$end_mark ; } ?> <!--日历程序的正式开始--> <html> <head> <title>社区日历</title> <meta http-equiv=content-type content="text/html; charset=gb2312"> <head> <body> <? //获得当前的日期 $firstday = getdate(mktime(0,0,0,date("m"),1,date("Y"))); setup(); //显示表格的名称 echo "<CENTER>"; echo "<TABLE BORDER=2 CELLSPACING=4>"; echo "<TH COLSPAN=7 HEIGHT=50>"; echo "<FONT COLOR=red SIZE=3 >"; echo "$firstday[year]年  ".$mon_name[$firstday[mon]-1]."月 月历"; echo "</FONT>"; echo "</TH>"; //表头 $weekDay[0] = "日"; $weekDay[1] = "一"; $weekDay[2] = "二"; $weekDay[3] = "三"; $weekDay[4] = "四"; $weekDay[5] = "五"; $weekDay[6] = "六"; echo "<TR ALIGN=/"center/" VALIGN=/"center/">"; //显示表格的第一行 for ($dayNum = 0; $dayNum < 7; ++$dayNum) { showline($weekDay[$dayNum],"red"); } echo"</TR>"; $toweek=$firstday[wday];//本月的第一天是星期几 $lastday=$mon_num[$firstday[mon]-1];//本月的最后一天是星期几 $day_count = 1;//当前应该显示的天数 $up_to_firstday = 1;//是否显示到本月的第一天 for ($row = 0; $row <= ($lastday+$toweek-1)/7; ++$row)//本月有几个星期 { echo "<TR ALIGN=center VALIGN=center>"; for ($col=1; $col<=7; ++$col) { //在第一天前面显示的都是"空" if (($up_to_firstday <= $toweek) ||($day_count>$lastday)) { echo "<TD> </TD>"; $up_to_firstday++; } else { //显示本月中的某一天 showline($day_count,"blue"); $day_count++; } } echo "</TR>"; } echo "</TABLE>"; echo "</CENTER>"; ?> </body> </html>
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。