博客列表 >PHP实现万年历的制作

PHP实现万年历的制作

梁凯达的博客
梁凯达的博客原创
2018年12月27日 08:37:551253浏览

实例

<?php
	//var_dump($_GET);
	//使用地址栏传递我们的年份和月份
	//获取传递过来的年份
	$year = isset($_GET['y'])?$_GET['y']:date('Y');

	//获取传递过来的月份
	$mon = isset($_GET['m'])?$_GET['m']:date('m');

	//当前月份有多少天
	$d = mktime(0,0,0,$mon,1,$year);
	$day = date('t',$d);
	//echo $day;
	//当前月份1号是星期几
	$w = mktime(0,0,0,$mon,1,$year);
	$week = date('w',$w); 
	//echo $week;
?>

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
</head>
<body>
	<table border="1" width="800" align="center">
		<caption><?php echo $year?>年<?php echo $mon?>月</caption>
		<tr>
			<th>星期日</th>
			<th>星期一</th>
			<th>星期二</th>
			<th>星期三</th>
			<th>星期四</th>
			<th>星期五</th>
			<th>星期六</th>
		</tr>
		<?php
		echo  '<tr>';
		//循环初始值
		$dd = 1;
		//输出 你想要的多少个空格
		for ($i=0; $i < $week ; $i++) { 
			echo '<td> </td>';
		}

		//循环输出你想要的多少个单元格
		while($dd<=$day){
			//输出的单元格
			echo '<td>'.$dd.'</td>';
			//如果满足条件我们的就让他换行
			if(($dd+$week) % 7==0){
				//这个是上面的tr的结束标签
				echo '</tr>';
				//这个是下面的tr的开始标签
				echo '<tr>';
			}
			$dd++;
		}
		echo '</tr>';
		?>	
	</table>
	<?php
		//我们需要得到两个参数一个是年份  一个是月份
		
		//年份
		//$prev_year = $next_year = $year;
		//上一年
		$prev_year = $year;
		//下一年
		$next_year = $year;

		$p_year = $n_year = $year;

		//下一年
		if($p_year>1970){
			$p_year--;
		}else{
			$p_year = 1970;
		}

		//上一年
		if($n_year >=2038){
			$n_year = 2038;
			if($mon >1){
				$mon=1;
			}
		}else{
			$n_year++;
		}



		//月份
		//$perv_mon = $next_mon = $mon;
		//上一月
		$prev_mon = $mon;
		//下一月
		$next_mon = $mon;
		//上一月判断范围
		if($prev_mon <= 1){
			//上一年减一
			$prev_year--;
			if ($prev_year < 1970) {
				$prev_year = 1970;
				$prev_mon = 1;
			}else{
				//月份变为12月
				$prev_mon = 12;
			}
		}else{
			//只要不小于1我们就减减
			$prev_mon--;
		}

		//下一月份
		if($next_mon >=12){
			//年份加一
			$next_year++;
			//月份变为1月
			$next_mon = 1;
		}else{
			//最大年份的月份只能是1月份
			if($next_year >=2038){
				$next_mon = 1;
			}else{
				$next_mon++;
			}
		}
	?>

	<!-- 居中标签 -->
	<center>
		<h3>
			<a href="./demo.php?m=<?php echo $mon?>&y=<?php echo $p_year?>"><button>上一年</button></a>
			<a href="./demo.php?m=<?php echo $prev_mon?>&y=<?php echo $prev_year?>"><button>上一月</button></a>
			<a href="./demo.php?m=<?php echo $next_mon?>&y=<?php echo $next_year?>"><button>下一月</button></a>
			<a href="./demo.php?m=<?php echo $mon?>&y=<?php echo $n_year?>"><button>下一年</button></a>

		</h3>

	</center>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例

声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议