Carbon анализирует строку Iso 8601 до даты UTC и записывает ее в дб - PullRequest
0 голосов
/ 25 сентября 2018

У меня есть следующая строка даты и времени Iso8601 2018-03-12T10:34:15-0200, и после того, как я проанализировал ее

Carbon::parse("2018-03-21T10:34:15-0200", 'UTC')

и сохранил ее в столбце mysql db datetime, у меня 2018-03-21 10:34:15, поэтому я потерял-0200 Разница часов с часовым поясом UTC.

Есть идеи, как решить это правильным образом?

1 Ответ

0 голосов
/ 25 сентября 2018

Вам не нужно передавать часовой пояс в качестве второго параметра для анализа функции.Часовой пояс уже является частью строки даты.Если вам нужно сохранить дату в UTC, просто преобразуйте ее в часовой пояс UTC после анализа следующим образом:

Carbon::parse("2018-03-21T10:34:15-0200")->setTimezone('UTC')

Конвертированная дата будет: 2018-03-21 12: 34: 15.0 UTC (+00: 00)

...