php之万年历

++++++++++++++++++++++++++++++++++++++++++++++++
万年历:时间和日期
+++++++++++++++++++ ++++++ +++++++++++++++++++++++

一、相关知识点

date — 格式化一个本地时间/日期
mktime — 取得一个日期的 Unix 时间戳
结构:
循环

逻辑判断

尖左括号:<
尖右括号:>

空格: 

时间戳是自 1970 年 1 月 1 日(08:00:00 GMT)至当前时间的总秒数。

二、实现步骤:

1、获取当前日期信息年和月
2、计算出当前月好、有多少天,和本月一号是星期几
3、输出日期的头部信息(标题和表头)
4、循环遍历出日期信息

5、输出上一个月和下一个月超链接

代码:

<?php
//1、获取当前日期信息年和月
$year = $_GET["y"]?$_GET['y']:date("Y");
$mon = $_GET["m"]?$_GET['m']:date("m");
//2、计算出当前月好、有多少天,和本月一号是星期几
$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;
echo"<tr>";
for($i=0;$i<$w;$i++)
{
	echo "<td> </td>";
}
while($dd<=$day)
{
	
	echo "<td>{$dd}</td>";
	
	if(($dd+$w)%7==0)
	{
		echo "</tr><tr>";
	}
	$dd++;
}
echo"</tr>";
echo "</table>";

//5、输出上一个月和下一个月超链接
if($mon<=1)
{
	$premon=12;
	$year=$year-1;
}else{
	$premon=$mon-1;
}

if($mon>=12)
{
	$nextmon=1;
	$year=$year+1;
}else{
	$nextmon=$mon+1;
}

echo "<a href='date.php?y={$year}&m={$premon}'><<  上一个月</a>  |  ";
echo "<a href='date.php?y={$year}&m={$nextmon}'>下一个月  >></a>";
echo "</center>";

?>


感想:

PHP初学者最大一个弱点就是对PHP已有函数不熟悉,

php中已有函数功能非常全面,熟悉php常用函数以及对php函数的了解非常重要,这就要求我们在平常做项目中积累,增加d对php函数的了解

不积跬步无以至千里,不积小流,无以成江海。







评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值