Я разрабатываю PHP/MySQL webapp
, который отслеживает состояние некоторых устройств с течением времени, получая серию снимков, отправленных программным обеспечением Windows через web service
(у меня тоже есть контроль над программным обеспечением Windows, так что я могупри необходимости внесите изменения).
Мне приходится сталкиваться с проблемой часовых поясов, поскольку программному обеспечению Windows часто требуется вместо этого передавать буквенные значения временных отметок (например, «2018-12-06 15:30:00»)NOW()
, ссылаясь на системное время.Компьютер, на котором он работает, может находиться в любом состоянии.
Я уже перенес свои данные MySQL из формата datetime в timestamp , так как первый нене обрабатывает часовые пояса, в то время как отметка времени - если я правильно понял - всегда хранит данные, связанные с GMT.
Как я могу передать эти буквальные значения из программного обеспечения Windows, также отметив часовой пояс, чтобы MySQL мог правильно преобразовать его в GMT?Я думаю о чем-то вроде «2018-12-06 15: 30: 00 + 01: 00» (что я пробовал, но безуспешно).
В дополнение к этому мне нужен способвыяснить, действует ли DST в PHP или нет, чтобы решить, как компенсировать значение метки времени.Есть ли способ сделать эту работу?
РЕДАКТИРОВАТЬ: Что касается летнего времени, я обнаружил, что MySQL должен иметь способ узнать смещение времени страны по сравнению с GMT в любое время, но часто таблицы, которые имеют дело с этим не заполнены наMySQL сервер.К сожалению, это также мой случай, и я не могу заполнить их вручную, потому что мой хостинг не предоставляет к ним доступ.