当前位置:首页 > 软件开发学习 > PHP学习 > 正文内容

php实现的万年历功能

admin6年前 (2014-09-08)PHP学习1124
<?php
//万年历的实现
//  1. 获取日期信息年和月(默认为当前的年和当前月) 与最下面上个月下个月链接配合的
  $year = $_GET["y"]?$_GET['y']:date("Y");
  $mon = $_GET["m"]?$_GET["m"]:date("m");
  
//  2、计算出当前月有多少天和本月1号是星期几
  $day = date("t",mktime(0,0,0,$mon,1,$year));//获取对应月的天数
  $w  = date("w",mktime(0,0,0,$mon,1,$year)); //获取当前月中1号是星期几
//  3. 输出日期的头部信息(标题和表头)
  echo "<center>";
  echo "<h1>{$year}年{$mon}月</h1>";
  echo "<table width='600' border='1'>";
  echo "<tr>";
  echo "<th style='color:#ff0000'>星期日</th>";
  echo "<th>星期一</th>";
  echo "<th>星期二</th>";
  echo "<th>星期三</th>";
  echo "<th>星期四</th>";
  echo "<th>星期五</th>";
  echo "<th style='color:#008000'>星期六</th>";
  echo "</tr>"; 
//  4、循环遍历输出日期信息
   $dd=1; //定义一个循环的天数
   while($dd<=$day){ //外层循环值为1,8,15,22,29时判断
 echo "<tr>";
 //输出一周的信息
 for($i=0;$i<7;$i++){
   //当还没有到该输出日期的时候,或已经日期溢出时,输出的都是空单元格
if(($w>$i && $dd==1) || $dd>$day){
   echo "<td>&nbsp;</td>"; 
}else{
echo "<td>{$dd}</td>";
   $dd++;
}
/*
//若没有输出完日期dd信息
if($dd<=$day && ($w<=$i ||$dd!=1)){
  echo "<td>{$dd}</td>";
  $dd++;
}else{
  echo "<td>&nbsp;</td>"; 
}
*/
 }
 echo "</tr>";
   }
  echo "</table>";
  
  
//  5、 输出上一月和下一月的超级链接
   //处理上一月和下一月的信息
   $prey=$nexty=$year;//年
   $prem=$nextm=$mon;//月
   if($prem<=1){
$prem=12;
$prey--;
   }else{
$prem--;
   }
   if($nextm>=12){
$nextm = 1;
$nexty++;
   }else{
$nextm++;
   }
 
  echo "<h3><a href='date.php?y={$prey}&m={$prem}'>上一月</a>&nbsp;&nbsp;&nbsp;&nbsp;";
  
  echo "<a href='date.php?y={$nexty}&m={$nextm}'>下一月</a></h3>";
echo "</center>";


扫描二维码推送至手机访问。

版权声明:本文由学无止境-开拓创新-ipvb学习网发布,如需转载请注明出处。

分享给朋友:

相关文章

php过滤危险html代码

用PHP过滤html里可能被利用来引入外部危险内容的代码。有些时候,需要让用户提交html内容,以便丰富用户发布的信息,当然,有些可能造成显示页面布局混乱的代码也在过滤范围内。以下是引用片段:#用户发...

PHP header() 函数

  PHP header() 函数  PHP HTTP 函数  定义和用法  header() 函数向客户端发送原始的 HTTP 报头。  认识到一点很重要,即必须在任何实际的输出被发送之前调用 he...

php的header来定义一个php页面为utf编码或GBK编码

  php的header来定义一个php页面为utf编码或GBK编码  php页面为utf编码  header("Content-type: text/html; charset=utf-8...

php的session优化

php的session优化

这个问题很多做php开发朋友应该都有遇到过,一个启用了session_start 页面,由于执行时间过长。导致通一个用户访问,另外一个很简单的启用session_start页面一直阻塞着。 直到第一个...

计算并输出1000000次字符串比较和数字比较的耗时

//9.代码:计算并输出1000000次字符串比较和数字比较的耗时。 $str1="123"; $str2="145"; $a=microtime(tru...

PHP语言的优势?

 随着移动互联网的兴起,互联网行业正向更加智能化的Web3.0时代迈进,中国互联网 行业进入了高速发展的势态,PHP语言已经为大部分企业广泛应用和重视(如:新浪、百度、腾讯、TOM、淘宝、搜...