php如何实现万年历的开发(每日一课真是非常有效率)
php如何实现万年历的开发(每日一课真是非常有效率)
一、总结
一句话总结:
1、判断每月有多少天:
通过data函数来判断,$days=date('t',$firstday);
2、判断每月的第一天是星期几:
还是 通过data函数来判断,$week=date('w',$firstday);
3、如何获取某年某月某日对应的时间戳:
通过strtotime函数来得到,$firstday=strtotime("{$year}-{$month}-1");
4、如何实现上一月下一月操作:
get方式传递参数,把年和月作为参数传过去。
1、如何判断每月有多少天?
解答:通过data函数来判断,$days=date('t',$firstday);。
2、如何判断每月的第一天是星期几?
解答:还是 通过data函数来判断,$week=date('w',$firstday);。
3、如何获取某年某月某日对应的时间戳?
解答:通过strtotime函数来得到,$firstday=strtotime("{$year}-{$month}-1");。
4、php万年历脚本如何实现上一月下一月操作?
解答:get方式传递参数,把年和月作为参数传过去。
5、html中的php代码应该如何放置?
解答:若非逼不得已插入html代码中,可以找一块区域放php代码。
6、php如何获取get方式传过来的参数,比如y?
解答:$_GET['y']。
7、php代码如何内嵌入html中?
解答:正常的php代码的格式即可,<?php ?>,<h2>万年历-<?php echo $year ?>年<?php echo $month ?>月</h2>。
8、php万年历如何在每月1号的前面把该空出来的格子空出来?
解答:把他们依次看成0,-1,-2,-3等等,然后i从(1-$week)开始取$i=(1-$week);,然后那些小于1对应的格子td里面就输出空格就好。
9、如何get方式传参数?
解答:url?y=3&m=3。
10、php如何实现动态传参数?
解答:加php代码<?php ?>即可,然后echo出参数,<a href="datenew.php?y=<?php echo $prevyear ?>&m=<?php echo $prevmonth ?>">上一月</a>。
二、php实现万年历的开发
截图
代码
<?php
//当前年
$year=$_GET['y']?$_GET['y']:date('Y'); //当前月
$month=$_GET['m']?$_GET['m']:date('m'); //当前月1号的时间戳
$firstday=strtotime("{$year}-{$month}-1"); //当前月天数
$days=date('t',$firstday); //当前月1号是周几
$week=date('w',$firstday); //下一年和下一月
$nextyear=$year;
$nextmonth=$month+1;
if($nextmonth>12){
$nextyear=$year+1;
$nextmonth=1;
} //上一年和上一月
$prevyear=$year;
$prevmonth=$month-1;
if($prevmonth<1){
$prevyear=$year-1;
$prevmonth=12;
} ?>
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>index</title>
<style>
*{
font-family: 微软雅黑;
} a{
text-decoration: none;
color:#55f;
}
</style>
</head>
<body>
<center>
<h2>万年历-<?php echo $year ?>年<?php echo $month ?>月</h2>
<table border='1px' cellspacing='0' width='700px'>
<tr>
<th>周日</th>
<th>周一</th>
<th>周二</th>
<th>周三</th>
<th>周四</th>
<th>周五</th>
<th>周六</th>
</tr> <?php
for($i=(1-$week);$i<=$days;){
echo '<tr>';
for($j=0;$j<7;$j++,$i++){
if($i>$days || $i<1){
echo "<td> </td>";
}else{
echo "<td>{$i}</td>";
}
}
echo '</tr>';
}
?>
</table>
<h3>
<a href="datenew.php?y=<?php echo $prevyear ?>&m=<?php echo $prevmonth ?>">上一月</a> |
<a href="datenew.php?y=<?php echo $nextyear ?>&m=<?php echo $nextmonth ?>">下一月</a>
</h3>
</center>
</body>
</html>
三、测试题-简答题
1、如何判断每月有多少天?
解答:通过data函数来判断,$days=date('t',$firstday);。
2、如何判断每月的第一天是星期几?
解答:还是 通过data函数来判断,$week=date('w',$firstday);。
3、如何获取某年某月某日对应的时间戳?
解答:通过strtotime函数来得到,$firstday=strtotime("{$year}-{$month}-1");。
4、php万年历脚本如何实现上一月下一月操作?
解答:get方式传递参数,把年和月作为参数传过去。
5、html中的php代码应该如何放置?
解答:若非逼不得已插入html代码中,可以找一块区域放php代码。
6、php如何获取get方式传过来的参数,比如y?
解答:$_GET['y']。
7、php代码如何内嵌入html中?
解答:正常的php代码的格式即可,<?php ?>,<h2>万年历-<?php echo $year ?>年<?php echo $month ?>月</h2>。
8、php万年历如何在每月1号的前面把该空出来的格子空出来?
解答:把他们依次看成0,-1,-2,-3等等,然后i从(1-$week)开始取$i=(1-$week);,然后那些小于1对应的格子td里面就输出空格就好。
9、如何get方式传参数?
解答:url?y=3&m=3。
10、php如何实现动态传参数?
解答:加php代码<?php ?>即可,然后echo出参数,<a href="datenew.php?y=<?php echo $prevyear ?>&m=<?php echo $prevmonth ?>">上一月</a>。
php如何实现万年历的开发(每日一课真是非常有效率)的更多相关文章
- 转:【iOS开发每日小笔记(十一)】iOS8更新留下的“坑” NSAttributedString设置下划线 NSUnderlineStyleAttributeName 属性必须为NSNumber
http://www.bubuko.com/infodetail-382485.html 标签:des class style 代码 html 使用 问题 文件 数据 ...
- PHP Filesystem 函数(文件系统函数)(每日一课的内容可以从php参考手册上面来)
PHP Filesystem 函数(文件系统函数)(每日一课的内容可以从php参考手册上面来) 一.总结 1.文件路径中的正反斜杠:当在 Unix 平台上规定路径时,正斜杠 (/) 用作目录分隔符.而 ...
- shopnc 二次开发 每日签到积分领取
/* 开始shopnc!!!!! url:xxx.com/index.php?act=index&op=userjf 一个四线城市的半吊子程序员~ 实现:前台模板文件 随便加入<a> ...
- 敏捷开发每日报告--day4
1 团队介绍 团队组成: PM:齐爽爽(258) 小组成员:马帅(248),何健(267),蔡凯峰(285) Git链接:https://github.com/WHUSE2017/C-team 2 ...
- 敏捷开发每日报告--day5
1 团队介绍 团队组成: PM:齐爽爽(258) 小组成员:马帅(248),何健(267),蔡凯峰(285) Git链接:https://github.com/WHUSE2017/C-team 2 ...
- 【Android开发】 第一课 环境搭建教程
Windows 开发环境部署: Android Studio 中文社区:http://www.android-studio.org/ 本教程将分为五个步骤来完成Android开发环境的部署. 第一步: ...
- 阶段2-新手上路\项目-移动物体监控系统\Sprint4-嵌入式web服务器开发\第3课-CGI程序开发
实现CGI程序显示一幅图片最核心的功能 把上一节课编写好的led.c程序拷贝过来,并重新命名为image.c 把led的某些部分删除,后如下 那么如何显示一幅图片呢,百度(搜索在html里面去插入图片 ...
- Python开发 第01课 Python 简介
一.Python 介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为AB ...
- 深入浅出CChart 每日一课——快乐高四第九课 于无声处,CChart内置功能介绍之数据存取篇
笨笨长期以来一直使用Origin软件画图和处理数据,但Origin软件没有编程语言的接口.笨笨开发CChart的一个潜在的目标.是想实现Origin软件的功能.当然这是一个不可能达到的目标.Origi ...
随机推荐
- [React & Testing] Simulate Event testing
Here we want to test a toggle button component, when the button was click, state should change, styl ...
- phoenixframe自己主动化平台在Linux环境下运行用例的说明
phoenixframe自己主动化平台支持在Linux环境下使用phantomjs,Firefox.chrome运行測试用例.但有下面几个问题须要注意: 1.若无法启动phantomjs,Firefo ...
- Want to archive tables? Use Percona Toolkit’s pt-archiver--转载
原文地址:https://www.percona.com/blog/2013/08/12/want-to-archive-tables-use-pt-archiver/ Percona Toolkit ...
- report_timing
report_timing -max_path 2 会报告两条路径,但不一定是最差的路径 report_timing -nworst 2 -max_path 2 会报告两条最差的路径
- [Angular] New async 'as' syntax and ngIf.. else
From Anuglar v4 above, we are able to using 'as' with async pipe. This allow as using 'new variable' ...
- cocos2D(一)----第一个cocos2D程序
简单介绍 我们这个专题要学习的是一款iOS平台的2D游戏引擎cocos2d.严格来说叫做cocos2d-iphone,由于cocos2d有非常多个版本号.我们学习的是iphone版本号的.既然是个游戏 ...
- Android Studio设置图片背景及主题设置
因为Android Studio是基于IDEA的,所以IDEA里面能用的插件Android Studio也能用,这次图片背景是依赖IDEA下的一个插件,名为BackgroundImage的插件,用户可 ...
- LA 3644 - X-Plosives ( 也即UVA 1160)
LA看题 请点击:传送门 UVA 上也有这题 :UVA 1160 - X-Plosives 题目大意就是如果车上存在 k 个简单化合物,正好包含 k 种元素 ,那么它们将有危险,此时你应该拒绝装车. ...
- iOS图片加载-SDWebImage
一.SDWebImage内部实现过程 1, 入口 setImageWithURL:placeholderImage:options: 会先把 placeholderImage 显示,然后 SDWeb ...
- 【例题 6-8 UVA - 548】Tree
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 后序遍历的最后一个是根节点. ->然后在中序遍历中找到这个节点. 分为左右两段. 然后递归上述操作就好. 题目描述好坑啊. 原 ...