3v4l.org

run code in 300+ PHP versions simultaneously
<?php $start = new DateTime('2019-01-01'); $end = new DateTime('2019-02-27'); $interval = new DateInterval('P1D'); $days = 19; while ($start < $end) { echo $start->format('Y-m-d') . ' => '; for ($i = 0; $i < $days; ) { $start->add($interval); $day_of_week = $start->format('N'); if ($day_of_week == 6 || $day_of_week == 7) continue; $i++; } echo min($start, $end)->format('Y-m-d') . "\n"; $start->add($interval); }
Output for 7.1.25 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
2019-01-01 => 2019-01-28 2019-01-29 => 2019-02-25 2019-02-26 => 2019-02-27

preferences:
123.65 ms | 407 KiB | 5 Q