一个PHP日历程序


Posted in PHP onDecember 06, 2006

<?php 
//<-------处理通过GET方法提交的变量;开始--------> 
if($HTTP_GET_VARS[year]=="") 

    $HTTP_GET_VARS[year]=date("Y"); 

if($HTTP_GET_VARS[month]=="") 

    $HTTP_GET_VARS[month]=date("n"); 

$month=$HTTP_GET_VARS[month]; 
$year=$HTTP_GET_VARS[year]; 
//<-------处理通过GET方法提交的变量;结束--------> 
if($year<1971) 

    echo "出错!"; 
    echo "<BR>"; 
    echo "<a href=$HTTP_SERVER_VARS[PHP_SELF]>Back</a>"; 
    exit(); 

?> 
<table width="200" border="1" cellspacing="0" cellpadding="0" bordercolor="#E7E7E7" style="font-size:12px;" align="center"> 
<tr align="center"><td colspan="2"> 
<?php  
//<-------当月份超出1至12时的处理;开始-------> 
if($month<1) 

    $month=12; 
    $year-=1; 

if($month>12) 

    $month=1; 
    $year+=1; 

//<-------当月份超出1至12时的处理;结束-------> 
//*************************************** 
//<---------上一年,下一年,上月,下月的连接处理及输出;开始---------> 
echo "<a href=$HTTP_SERVER_VARS[PHP_SELF]?year=".($year-1)."&month=".$month."><<</a>年<a href=$HTTP_SERVER_VARS[PHP_SELF]?year=".($year+1)."&month=".$month.">>></a>"; 
?> 
</td><td colspan="3"><?php echo $year."年".$month."月";?> 
</td><td colspan="2"> 
<?php  
echo "<a href=$HTTP_SERVER_VARS[PHP_SELF]?month=".($month-1)."&year=".$year."><<</a>月<a href=$HTTP_SERVER_VARS[PHP_SELF]?month=".($month+1)."&year=".$year.">>></a>"; 
//<--------上一年,下一年,上月,下月的连接处理及输出;结束---------> 
   ?></td></tr> 
 <tr align=center><td><font color="red">日</font></td><td>一</td><td>二</td><td>三</td><td>四</td><td>五</td><td>六</td></tr><tr> 
<?php 
$d=date("d"); 
$FirstDay=date("w",mktime(0,0,0,$month,1,$year));//取得任何一个月的一号是星期几,用于计算一号是由表格的第几格开始 
$bgtoday=date("d"); 
function font_color($month,$today,$year)//用于计算星期天的字体颜色 

    $sunday=date("w",mktime(0,0,0,$month,$today,$year)); 
    if($sunday=="0") 
    { 
        $FontColor="red"; 
    } 
    else 
    { 
        $FontColor="black"; 
    } 
    return $FontColor; 

function bgcolor($month,$bgtoday,$today_i,$year)//用于计算当日的背景颜色 

    $show_today=date("d",mktime(0,0,0,$month,$today_i,$year)); 
    $sys_today=date("d",mktime(0,0,0,$month,$bgtoday,$year)); 
    if($show_today==$sys_today) 
    { 
        $bgcolor="bgcolor=#6699FF"; 
    } 
    else 
    { 
        $bgcolor=""; 
    } 
    return $bgcolor; 

function font_style($month,$today,$year)//用于计算星期天的字体风格 

    $sunday=date("w",mktime(0,0,0,$month,$today,$year)); 
    if($sunday=="0") 
    { 
        $FontStyle="<strong>"; 
    } 
    else 
    { 
        $FontStyle=""; 
    } 
    return $FontStyle; 

for($i=0;$i<=$FirstDay;$i++)//此for用于输出某个月的一号位置 

    for($i;$i<$FirstDay;$i++) 
    { 
        echo "<td align=center> </td>\n"; 
    } 
    if($i==$FirstDay) 
    { 
        echo "<td align=center ".bgcolor($month,$bgtoday,1,$year)."><font color=".font_color($month,1,$year).">".font_style($month,1,$year)."1</font></td>\n"; 
        if($FirstDay==6)//判断1号是否星期六 
        { 
            echo "</tr>"; 
        } 
    } 

$countMonth=date("t",mktime(0,0,0,$month,1,$year));//某月的总天数 
for($i=2;$i<=$countMonth;$i++)//输出由1号定位,随后2号直至月尾的所有号数 

    echo "<td align=center ".bgcolor($month,$bgtoday,$i,$year)."><font color=".font_color($month,$i,$year).">".font_style($month,$i,$year)."$i</font></td>\n"; 
    if(date("w",mktime(0,0,0,$month,$i,$year))==6)//判断该日是否星期六 
    { 
    echo "</tr>\n"; 
    } 

?> 
</table>

PHP 相关文章推荐
聊天室php&amp;mysql(四)
Oct 09 PHP
杏林同学录(九)
Oct 09 PHP
php循环输出数据库内容的代码
May 24 PHP
php实现首页链接查询 友情链接检查的代码
Jan 05 PHP
php数组声明、遍历、数组全局变量使用小结
Jun 05 PHP
使用php实现截取指定长度
Aug 06 PHP
destoon设置自定义搜索的方法
Jun 21 PHP
PHP中ID设置自增后不连续的原因分析及解决办法
Aug 21 PHP
Zend Framework上传文件重命名的实现方法
Nov 25 PHP
php 三元运算符实例详细介绍
Dec 15 PHP
PHP获取当前URL路径的处理方法(适用于多条件筛选列表)
Feb 10 PHP
PHP与SQL语句写一句话木马总结
Oct 11 PHP
模板引擎Smarty深入浅出介绍
Dec 06 #PHP
PHP文件下载类
Dec 06 #PHP
常用表单验证类,有了这个,一般的验证就都齐了。
Dec 06 #PHP
IIS6.0+PHP5.x+MySQL5.x+Zend3.0x+GD+phpMyAdmin2.8x通用安装实例(已经完成)
Dec 06 #PHP
PHP分页显示制作详细讲解
Dec 05 #PHP
PHP生成静态页面详解
Dec 05 #PHP
详解:――如何将图片储存在数据库里
Dec 05 #PHP
You might like
人工智能开始玩《星际争霸2》 你的操作跟得上吗?
2017/08/11 星际争霸
外媒评选出10支2020年最受欢迎的Dota2战队
2021/03/05 DOTA
给初学PHP的5个入手程序
2006/11/23 PHP
cmd下运行php脚本
2008/11/25 PHP
php获得文件夹下所有文件的递归算法的简单实例
2016/11/01 PHP
PHP实现微信模拟登陆并给用户发送消息的方法【文字,图片,图文】
2017/06/29 PHP
thinkPHP5框架路由常用知识点汇总
2019/09/15 PHP
最新优化收藏到网摘代码(digg,diigo)
2007/02/07 Javascript
javascript 模拟点击广告
2010/01/02 Javascript
javascript 触发HTML元素绑定的函数
2010/09/11 Javascript
导入extjs、jquery 文件时$使用冲突问题解决方法
2014/01/14 Javascript
防止jQuery ajax Load使用缓存的方法小结
2014/02/22 Javascript
js 获取页面高度和宽度兼容 ie firefox chrome等
2014/05/14 Javascript
原生js实现日期联动
2015/01/12 Javascript
JS实现拖动滚动条评分的效果代码分享
2016/09/29 Javascript
jQuery密码强度验证控件使用详解
2017/01/05 Javascript
从零学习node.js之搭建http服务器(二)
2017/02/21 Javascript
Angular2.js实现表单验证详解
2017/06/23 Javascript
微信小程序模板(template)使用详解
2018/01/31 Javascript
微信小程序实现简单表格
2019/02/14 Javascript
JS使用JSON.parse(),JSON.stringify()实现对对象的深拷贝功能分析
2019/03/06 Javascript
详解Vue 单文件组件的三种写法
2020/02/19 Javascript
javascript将扁平的数据转为树形结构的高效率算法
2020/02/27 Javascript
Vue-cli打包后部署到子目录下的路径问题说明
2020/09/02 Javascript
windows下Virtualenvwrapper安装教程
2017/12/13 Python
Python tkinter label 更新方法
2018/10/11 Python
Windows上安装tensorflow  详细教程(图文详解)
2020/02/04 Python
3种适用于Python的疯狂秘密武器及原因解析
2020/04/29 Python
大学生旅游业创业计划书
2014/01/29 职场文书
大学国际贸易专业自荐信
2014/06/05 职场文书
2015届大学生就业推荐表自我评价
2014/09/27 职场文书
2016重阳节红领巾广播稿
2015/12/18 职场文书
2019请假条的基本格式及范文!
2019/07/05 职场文书
pytorch 如何把图像数据集进行划分成train,test和val
2021/05/31 Python
Python turtle实现贪吃蛇游戏
2021/06/18 Python
MySQL系列之十三 MySQL的复制
2021/07/02 MySQL