СЦЕНАРИЙ
Итак, у меня есть пользовательский объект, в котором есть три поля: start_date, end_date и booking_expire_time (для события).
Мои даты приходят из Magento в форме String ofc, я уже вошел в систему, поэтому они приходят как
Thu Aug 30 09:46:16 2018 [8779][ffba8854-e7c0-11e6-85b6-06ec5399a877][FATAL] $start_date - 08/30/2018 11:59 AM
Thu Aug 30 09:46:16 2018 [8779][ffba8854-e7c0-11e6-85b6-06ec5399a877][FATAL] $event_endt_time - 08/31/2018 11:59 AM
Thu Aug 30 09:46:16 2018 [8779][ffba8854-e7c0-11e6-85b6-06ec5399a877][FATAL] $booking_expire_time - 08/30/2018 12:59 PM
Что является правильным и тем же, что я выбрал в Magento
И я храню это как следование этому бобу.
$st = date_create_from_format("m/d/Y H:i A",$start_date);
$eventBean->start_date = date_format($st, 'Y-m-d H:i:s');
$en = date_create_from_format("m/d/Y H:i A",$event_end_time);
$eventBean->event_end_time = date_format($en, 'Y-m-d H:i:s');
$ex = date_create_from_format("m/d/Y H:i A",$booking_expire_time);
$eventBean->booking_expire_time = date_format($ex, 'Y-m-d H:i:s');
ВЫПУСКА
Нет проблем с сохранением, кроме тех случаев, когда я захожу в пользовательский интерфейс и проверяю дату и время, дата и время разные.
Я попытался изменить часовой пояс пользователя и сохранить его снова, но он все тот же, я попытался установить часовой пояс на UTC в настройках пользователя, но все же происходит то же самое.
Я записал дату и время получения в коде, и он печатает следующие данные для начальной и конечной даты
DateTime Object
(
[date] => 2018-08-30 11:59:00.000000
[timezone_type] => 3
[timezone] => UTC
)
DateTime Object
(
[date] => 2018-08-31 11:59:00.000000
[timezone_type] => 3
[timezone] => UTC
)
![For the UI date please check Image](https://i.stack.imgur.com/I3nAU.png)
EDIT
Настройка часового пояса
![Timezone settings screenshot](https://i.stack.imgur.com/fUZOo.png)
PHPInfo из инструмента диагностики
![PHPInfo](https://i.stack.imgur.com/0HLvM.jpg)