分享一例PHP简单日历代码

发布时间:2019-09-11编辑:脚本学堂
本文分享一例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]年 &nbsp".$mon_name[$firstday[mon]-1]."月&nbsp月历";
 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>&nbsp</TD>";                          
    $up_to_firstday++;                              
   }                                                       
   else                                                    
{                                                       
//显示本月中的某一天                                       
showline($day_count,"blue");                                
    $day_count++;                                   
}                                                       
  }                                                               
  echo "</TR>";                                                   
 } 
   
 echo "</TABLE>";                                                        
 echo "</CENTER>";                                                       
?>   
</body>                                                                    
</html>

>>> 您可能感兴趣的文章:
php calender日历代码(解决2038问题)
php日历代码(附演示效果)
php日历代码分享 简单实用的php日历代码
php日历代码 php实现的高效日历代码
php日历代码 三个不错的php日历代码
php简单日历的实现代码(可绑定事件)