Итак, у меня есть этот очень простой код, но он отказывается работать, и я понятия не имею, почему?
$date1= new DateTime (gmdate('H:i Y-m-d'));
$date2 = new DateTime('now', new DateTimeZone('America/New_York'));
echo $date1->format('H:i Y-m-d') .'<br>'; returns //08:32 2018-06-08
echo $date2->format('H:i Y-m-d') .'<br><br>'; returns //04:32 2018-06-08
$diff = $date1->diff($date2);
$diffTime = $diff->format('%R%H:%I');
echo $diffTime; returns //+02:00
Я не математик, но я уверен, что разница между 04:32 и08:32 - это не 2 часа, а больше как 4.
И если я его поменяю, это иногда приводит к еще большему отклонению.
$date1 = new DateTime ('now', new DateTimeZone('Indian/Comoro'));
$date2 = new DateTime('now', new DateTimeZone('America/New_York'));
echo $date1->format('H:i Y-m-d') .'<br>'; returns //11:44 2018-06-08
echo $date2->format('H:i Y-m-d') .'<br><br>'; returns //04:44 2018-06-08
$diff = $date1->diff($date2);
$diffTime = $diff->format('%R%H:%I');
echo $diffTime; returns //+00:00
Я просто не успеваю.