【发布时间】:2015-04-17 08:59:29
【问题描述】:
我有以下代码返回从今天开始的接下来的 13 个星期一。
for($i=1; $i<=13; $i++){
echo date("Y-m-d", strtotime('+'.$i.' Monday'))."<br>";
}
我希望能够对此进行修改,使其不仅显示接下来的 13 个星期一,而且显示刚刚过去的星期一。
我尝试按如下方式修改代码,但随后返回了下周一的两个实例。
for($i=-1; $i<=13; $i++){
echo date("Y-m-d", strtotime('+'.$i.' Monday'))."<br>";
}
数据返回。
2015-04-13
2015-04-20 //<--
2015-04-20
2015-04-27
2015-05-04
2015-05-11
2015-05-18
2015-05-25
2015-06-01
2015-06-08
2015-06-15
2015-06-22
2015-06-29
2015-07-06
2015-07-13
关于我如何实现这一目标的任何想法?
【问题讨论】:
-
您可以在循环内添加一个条件来忽略
$i=0;的情况。类似if($i == 0) continue; -
如果今天是星期一呢?
-
@chumkiu: 如果今天是星期一,+0 星期一可以工作 :)
-
@Marc 如果他想要 +0 Monday 做的事情,它可以工作 :-)