PHP日期时间运用九:获取某年某周的开始和结束日期
今天我们将继续介绍PHP日期时间运用系列文章,那么在《PHP日期时间运用大汇总(持续更新~)》文章中也会及时更新,感兴趣的朋友可以收藏起来学习呀~
如果各位有了解过之前发布过的这一系列文章,相信大家对日期时间的掌握都很熟练了。
那么针对“如何编写一个PHP函数来获取特定年份的一周的开始和结束日期(按周数)”这个具体问题,大家可以迅速想出实现方法吗?
下面是我提供的一种实现方法,大家可以参考一下:
PHP代码如下:
<?php function Start_End_Date_of_a_week($week, $year) { $time = strtotime("1 January $year", time()); $day = date('w', $time); $time += ((7*$week)+1-$day)*24*3600; $dates[0] = date('Y-n-j', $time); $time += 6*24*3600; $dates[1] = date('Y-n-j', $time); return $dates; } $result = Start_End_Date_of_a_week(12,2020); echo '本周开始日期: '. $result[0]."<br>"; echo '本周结束日期: '. $result[1];
输出结果是:
这里我们给出的参数分别是年份(2020),周数(12周),最后计算的日期结果分别是2020-3-23、2020-3-29。
strtotime
函数:将任何英文文本的日期或时间描述解析为 Unix 时间戳;
time
函数:返回自 Unix 纪元(January 1 1970 00:00:00 GMT)起的当前时间的秒数;
date
函数:格式化本地日期和时间,并返回已格式化的日期字符串;
本示例“date('w', $time);
”中参数w表示星期几的数字(0 表示 Sunday[星期日],6 表示 Saturday[星期六])。
“date('Y-n-j', $time);
”中参数Y表示年份的四位数;n表示月份的数字,不带前导零(1 到 12);j表示一个月中的第几天,不带前导零(1 到 31)。
最后给大家推荐最新最全面的《PHP视频教程》~快来学习吧!