PHP获取当月的每2个星期天的具体日期
来源:本站编辑 发布日期:2013-9-22 已有 人浏览过此信息
很多的节日并不固定具体的日期,而是几月份的第几个星期天,如:父母节(每年六月的第三个星期日是父亲节)、母亲节(每年五月的第二个星期日是母亲节),所以需要电脑自动提醒是否已经到了,或者在日历上提醒当年的节日是哪一天。于是就有了这个问题的提出!
问题的提出: 如何获取当月或指定月份的第2个星期天的日期?
分析:
1、每月最多31天,所以可以使用For循环来把所有日期遍历
2、在For循环中判断当天是否是星期天
3、若是星期天则将日期放入字符吕中,这样就获取了本月所有星期天对应的日期
4、将字符串切割成数组,要获取第几个星期天就调用相应的数组
5、将代码封装成函数,可以传递三个参数:要获取星期几,当月第几个,输出格式
PHP代码如下:
/*
函数名 week()
作用:获取本月第几个星期几的具体日期
参数为:要获取星期几,第几个,日期输出格式*/
function week($week='Sunday',$num=1,$f='Y-m-d'){
for($i=1;$i<=31;$i++){
$date=date('Y-m-').$i;
$w=date('l',strtotime($date));
if ($w==$week){$ws.=$date.',';}
}
$ws=explode(',',$ws);
$tmp=date($f,strtotime($ws[$num-1]));
return $tmp;
}
//调用方法:
echo week('Sunday',2,'Y年m月d日'); //输出当月第2个星期天的具体日期
echo week('Friday',1,'Y年m月d日'); //输出当月第1个星期五的具体日期
?>
这样就将 如何获取当月或指定月份的第2个星期天的日期 的问题解决好了,同时,这个函数还进行了扩展,可以输出当月任何第几个星期几的日期,着实提供了不少方便。
作者:Admin