PHP输出日历表代码实例

 更新时间:2015年03月27日 10:52:30   投稿:junjie  
这篇文章主要介绍了PHP输出日历表代码实例,本文直接给出代码实例,需要的朋友可以参考下
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>月历表</title>
<?php
 $MONTH = array("元月","一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月");
 $enMONTH = array("元月","January" ,"February" ,"Marcy" ,"April" ,"May" ,"June" ,"July" ,"August" ,"September" ,"October" ,"November" ,"December");
 $WEEK = array("星期日","星期一","星期二","星期三","星期四","星期五","星期六");
 $BACKCOLOR = array("#FFC" , "#FFF" , "#9F6" , "#FFC" , "#6F0" , "#6F6" , "#F90" , "#F06" , "#F00" , "#FC3" , "#FF6" , "#F99");
 
 function PrintMon($year, $mon)
 {
 date_default_timezone_set("Asia/Shanghai"); 
 global $MONTH;
 global $enMONTH;
 global $WEEK;
 global $BACKCOLOR;
 
 $startdate =strtotime("1 $enMONTH[$mon] $year"); //获取查询的年月
 $enddate = strtotime("+1 month",$startdate);   //获取下一个月的开始日期作为月历输出的截止时间
 $theDate = getdate($startdate); //把日期转化为字符串格式
 $color = $BACKCOLOR[$mon]; //设置月历的背景颜色
 
 echo("<table border=\"1\" cellspacing=\"0\" cellpadding=\"0\" bgcolor=\"$color\">");
 $ym = $year . "年". $MONTH[$mon];
 echo("<caption><h1>$ym</h1></caption>");
 echo("<tr>");
 for ($i=0; $i<7; $i++) //输出星期几
 {
 echo("<td width=\"90\", height=\"40\" align=\"center\" >");
 echo("<h2>$WEEK[$i]</h2>");
 echo("</td>");
 }
 echo("</tr>");


 $theWeek = $theDate[wday];//判断当天是星期几
 for ($i=0; $i<6; $i++)
 {
 echo("<tr>");
 for ($j=0; $j<7; $j++)
 {
 echo("<td width=\"90\", height=\"40\" align=\"center\" >");
 if ($startdate < $enddate && $theWeek == $j)//把日期输出到对应的星期几所在列,并注意不要超出本月日期
 {
 $theDay = $theDate[mday];
 echo("<h2>$theDay</h2>");
 $startdate = strtotime("+1 day", $startdate); //日期前移1天
 $theDate = getdate($startdate);//更新日期
 $theWeek = ($theWeek + 1) % 7;//更新星期
 }
 echo("</td>");
 }
 echo("</tr>");
 if ($startdate == $enddate) //如果已经输出全部日期,结束循环
 {
 $i = 6;
 }
 }
 
 echo("</table");
 } 
?>


</head>


<body>


<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
<h1>请输入要查看的年号和月份(查询范围为1970年1月1日至2038年)</h1>
<input type="text" name="myYear">年<input type="text" name="myMonth">月
<input type="submit">
</form>


<?php
 $year = $_POST['myYear']; 
 $month = $_POST['myMonth'];
 if (is_numeric($year) && $year >= 1970 && $year <2038)
 {
 if (is_numeric($month) && $month >= 1 && $month <=12)
 {
 PrintMon($year, $month);
 }
 else if($month != NULL)
 {
 echo("月份不对" . "<br />");
 }
 }
 else if($year != NULL)
 {
 echo("年份不对" . "<br />");
 }
?>


</body>
</html>

相关文章

  • 浅析PHP微信支付通知的处理方式

    浅析PHP微信支付通知的处理方式

    本文是对上篇文章的一个补充,主要是官方没有关于通知的demo,摸石头过河真的很难受,方便大家开发,放出来给大家看看
    2014-05-05
  • 开启PHP Static 关键字之旅模式

    开启PHP Static 关键字之旅模式

    静态成员是一种类变量,可以把它看成时属于整个类而不是属于类的某个实例。与一般的实例变量不同的是,静态成员只保留一个变量值,而这个变量值对所有的实例都是有效的,也就是说,所有的实例共享这个成员,跟着小编一起去探讨php static关键字吧
    2015-11-11
  • php二维数组按某个键值排序的实例讲解

    php二维数组按某个键值排序的实例讲解

    今天小编就为大家分享一篇关于php二维数组按某个键值排序的实例讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • 20个2014年最优秀的PHP框架回顾

    20个2014年最优秀的PHP框架回顾

    这篇文章主要介绍了20个2014年最优秀的PHP框架回顾,简单分析了目前比较主流的优秀框架供大家参考,需要的朋友可以参考下
    2014-10-10
  • 怎么样可以把 phpinfo()屏蔽掉?

    怎么样可以把 phpinfo()屏蔽掉?

    怎么样可以把 phpinfo()屏蔽掉?...
    2006-11-11
  • ThinkPHP 6 添加跳转提示扩展 liliuwei/thinkphp-jump的操作方法

    ThinkPHP 6 添加跳转提示扩展 liliuwei/thinkphp-jump的操作

    liliuwei/thinkphp-jump 是 TP5 中经典跳转提示,在 TP6 中已经取消,通过 composer 下载该扩展可以在 TP6 中使用 TP5 的跳转提示操作,这篇文章主要介绍了ThinkPHP 6 添加跳转提示扩展 liliuwei/thinkphp-jump,需要的朋友可以参考下
    2023-08-08
  • Laravel中GraphQL接口请求频率实战记录

    Laravel中GraphQL接口请求频率实战记录

    这篇文章主要给大家介绍了关于Laravel中GraphQL接口请求频率的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • Laravel 自带的Auth验证登录方法

    Laravel 自带的Auth验证登录方法

    今天小编就为大家分享一篇Laravel 自带的Auth验证登录方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-09-09
  • Linux平台中使用PHP把word转pdf的实现方法

    Linux平台中使用PHP把word转pdf的实现方法

    下面小编就为大家带来一篇Linux平台中使用PHP把word转pdf的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • laravel-admin 添加、编辑按钮支持携带参数的解决方法

    laravel-admin 添加、编辑按钮支持携带参数的解决方法

    通过修改源码实现laravel-admin添加、编辑按钮支持携带参数,解决一些特殊功能需求,并且不影响之前添加和编辑程序运行,本文通过实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2023-11-11

最新评论