我希望有人能帮助我。我正在尝试构建一个下拉菜单,该菜单显示接下来的4-6个星期二以及正确的日期。这已经在工作。现在的问题是,我需要以下内容:
如果今天是星期三,则下拉列表应从BUT的第一个星期二开始,而不是从下周的星期二开始。为什么?因为从注册到交货时间,我总是需要整整7天的时间。
因此,如果今天是星期一,那么下一个(第一个)星期二应该是下周的星期二。还可以说今天是星期五,那么我的下拉列表不应从下周的星期二开始,而应从下周后的第二周的星期二开始。
像这样:今天是星期一-明天将是星期二,但是之间没有7天,因此应该显示下一个星期二。
这是我到目前为止的内容:
$begin = new DateTime('tuesday this week');
$end = new DateTime('last tuesday of next month');
$interval = new DateInterval( 'P1W' );
$daterange = new DatePeriod( $begin, $interval ,$end );
<select class='form-control margin-bottom-20' name='delivery_first' required>
foreach($daterange as $date){
<option value='".$date->format('d.m.Y')."'>"; echo $date->format('l'); echo $date->format('d.m.Y'); print"</option>
}
</select>
如果在7天之间,我知道如何执行检查?希望我的问题清楚。如果没有,请告诉我。
您可以使用最小datetime实例进行比较。
$begin = new DateTime('next tuesday');
$min = new DateTime('+7 days');
$interval = new DateInterval( 'P1W' );
if ($begin < $min) {
$begin->add($interval);
}
但是,如果您始终希望从现在开始的两个星期二,则可以进行以下简单更改:
$begin = new DateTime('next tuesday +7 days');
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句