3v4l.org

run code in 300+ PHP versions simultaneously
<?php //create calendar //make callDate week monday calStart $calStart = new DateTime(date_format(date_create("2016-12-20"),"Y-m-d")); $daysFromMon = date_format($calStart, "N") - 1; $calStart = date_add($calStart, date_interval_create_from_date_string("-$daysFromMon days")); //make calEnd 28 days after calStart $calEnd = new DateTime(date_format(date_add($calStart, date_interval_create_from_date_string("+28 days")),"Y-m-d")); $interval = new DateInterval('P1D'); $period = new DatePeriod($calStart, $interval, $calEnd); foreach($period as $curDay){ echo date_format($curDay,"Y-m-d")."<br>"; }
Output for 5.6.0 - 5.6.29, 7.0.0 - 7.0.20, 7.1.0 - 7.1.33, 7.2.5 - 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.34, 8.2.0 - 8.2.30, 8.3.0 - 8.3.30, 8.4.1 - 8.4.18, 8.5.0 - 8.5.3

preferences:
82.77 ms | 1629 KiB | 4 Q