php-遍历日期以预测40个40ff班次的时间表

问题描述 投票:-1回答:1

整个晚上都好...

编辑:

我正在尝试编写一个php脚本以输出在给定特定开始日期的情况下我将在今年剩余时间里工作的日期。

例如,我从2020-05-14开始,工作4天,然后请4天假。这将持续到今年的剩余时间。

我想输出我将要工作的日期,并认为可以使用php for loop来完成,但是我一直在考虑如何这样做太久了,似乎无法突破墙。

我的代码的开头是这样:

<?php

$z = date("z",mktime(0,0,0,05,14,2020));

for($i=$z;$i<=365;$i+=4) {

    echo("$i<br>");

}

?>

关于可能的解决方案,任何建议都将不胜感激。

php loops date
1个回答
0
投票

您正在计算一年中的某天(例如,对于2020-05-14,那将是134),这可以让您的脚本知道何时停止。

但是,您要输出日期,而现在要输出日期。

我认为有一种更简单的方法可以完成您要完成的任务。

<?php    

$start = new \DateTime("2020-05-14 00:00:00");    
$end = new \DateTime($start->format("Y") . "-12-31 00:00:00");    
$four = new \DateInterval("P4D");    
$one = new \DateInterval("P1D");    
$format = 'Y-m-d';    

$date = $start;    
while ($date <= $end) {    
    echo $date->format($format), PHP_EOL;    
    for ($day = 2; $day <= 4; $day++) {    
        $date->add($one);    
        echo $date->format($format), PHP_EOL;    
    }    
    $date->add($four);    
}
© www.soinside.com 2019 - 2024. All rights reserved.