3v4l.org

run code in 300+ PHP versions simultaneously
<?php $date = (new \DateTime('27-05-2018')); if (($weekDay = $date->format('N')) < 4) { // If the date is already a Monday, return it as-is $date->modify('next thursday'); } elseif ($weekDay > 4) { // Otherwise, return the date of the nearest Monday in the past // This includes Sunday in the previous week instead of it being the start of a new week $date->modify('last thursday'); } var_dump($weekDay); var_dump($date);

preferences:
59.88 ms | 402 KiB | 5 Q