2 回答
TA贡献1856条经验 获得超17个赞
您可以使用PHP的DateTime类。
<?php
$nextMonday = new \DateTime(date('Y-m-d') . ' previous Monday');
echo "<br/>" . $nextMonday->format('Y-m-d');
for ($i=1 ; $i<=9 ; ++$i) {
$nextMonday->sub(new DateInterval('P7D'));
echo "<br/>" . $nextMonday->format('Y-m-d');
}
输出:
2019-04-22
2019-04-15
2019-04-08
2019-04-01
2019-03-25
2019-03-18
2019-03-11
2019-03-04
2019-02-25
2019-02-18
代码说明:
首先在上周一获得。
现在,添加1到9的循环(我们已经有最近的星期一)。
在循环中,将日期减去7天(P->期间,7D-> 7天)
这样一来,我们只能进入星期一,而(星期一至星期一)相差7天。
它将在最后10个星期一(循环之前的1和循环之后的9)打印。
TA贡献1865条经验 获得超7个赞
$thisMonday = strtotime('this Monday');
$lastMonday = $thisMonday - 86400 * 7; //a day has 86400 seconds
$secondLastMonday = $thisMonday - 86400 * 14;
..... 等等!
- 2 回答
- 0 关注
- 151 浏览
添加回答
举报