3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?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);
based on l1Y7j
Output for 5.6.30, hhvm-3.18.5 - 3.22.0, 7.0.30 - 7.3.0alpha1
string(1) "7" object(DateTime)#1 (3) { ["date"]=> string(26) "2018-05-24 00:00:00.000000" ["timezone_type"]=> int(3) ["timezone"]=> string(16) "Europe/Amsterdam" }