- date_default_timezone_set: documentation ( source)
- strtotime: documentation ( source)
<?php
date_default_timezone_set("Europe/Brussels");
$test1 = 1537430301; //20-09-2018 10:00
$test2 = 1537438500; //20-09-2018 12:15
$time1 = strtotime("next Monday", $test1); // expected 24-09-2018 10:00
$time2 = strtotime("next Monday", $test2); // expected 24-09-2018 12:15
$datetime1 = DateTime::createFromFormat('U', (string)$time1);
$datetime1->setTimezone(new DateTimeZone("Europe/Brussels"));
echo $datetime1->format('Y-m-d H:i:s') . "\n";
$datetime2 = DateTime::createFromFormat('U', (string)$time2);
$datetime2->setTimezone(new DateTimeZone("Europe/Brussels"));
echo $datetime2->format('Y-m-d H:i:s') . "\n";