用php打印出日历_php简单日历函数

这篇文章主要介绍了php简单日历函数,没有选择比较常见的用js生成的日历,而是用php输出了一个日历表格,感兴趣的小伙伴们可以参考一下

本文实例讲述了php实现的日历程序。分享给大家供大家参考。具体如下:

/*

* php 输出日历程序

*/

header("Content-type: text/html;charset=utf-8");

$year=(!isset($_GET['year'])||$_GET['year']=="")?date("Y"):$_GET['year'];

$month=(!isset($_GET['month'])||$_GET['month']=="")?date("n"):$_GET['month'];

$curUrl=$_SERVER['PHP_SELF'];

if($year<1971){

echo "出错!";

echo "
";

echo "Back";

exit();

}

?>

//

if($month<1){

$month=12;

$year-=1;

}

if($month>12){

$month=1;

$year+=1;

}

//

//

echo "<<>>";

?>

<?php echo $year."年".$month."月";?>

echo "<<>>";

//

?>

$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="";

}else{

$FontStyle="";

}

return $FontStyle;

}

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

for($i;$i

echo "

\n";

}

if($i==$FirstDay){

echo "

".font_style($month,1,$year)."1\n";

if($FirstDay==6){//判断1号是否星期六

echo "

";

}

}

}

$countMonth=date("t",mktime(0,0,0,$month,1,$year));//某月的总天数

for($i=2;$i<=$countMonth;$i++){//输出由1号定位,随后2号直至月尾的所有号数

echo "

".font_style($month,$i,$year)."$i\n";

if(date("w",mktime(0,0,0,$month,$i,$year))==6){//判断该日是否星期六

echo "\n";

}

}

?>

php输出的日历效果如下图:

00bed7a4daed7755e1a6486698b37fa4.png

希望本文对大家学习php程序设计有所帮助。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值