У вас когда-либо возникали проблемы с преобразованиями времени в PHP через функцию getTransitions?
Я пытаюсь преобразовать аргентинскую дату в GMT. Если я посмотрю на массив переходов, я получаю:
.... [63] => Array ( [ts] => 1287284400 [time] => 2010-10-17T03:00:00+0000 [offset] => -7200 [isdst] => 1 [abbr] => ARST ) [64] => Array ( [ts] => 1300586400 [time] => 2011-03-20T02:00:00+0000 [offset] => -10800 [isdst] => [abbr] => ART ) ...
что означает, если я не ошибаюсь, с 2010-10-17 по 2011-03-20 разница в секундах аргентинской даты, по сравнению с эквивалентом GMT, она будет -7.200 (2 часа).
Но реальность – текущее смещение – четыре часа.
Пожалуйста, что мне не хватает? Извините, если выглядит как домашнее задание, но перед тем, как написать вопрос, я искал и пробовал много чего.
Благодарю.
Редактировать: Спасибо за ответы. Я понимаю, что переходы PHP жестко закодированы в установках PHP dll.s, поэтому, если какое-либо правительство страны решит изменить свои временные политики, то getTransitions устареет, если вы не обновите свою установку PHP (что-то не так просто, когда у вас есть производственная среда или вы используете общий хостинг).
Итак, новый вопрос: существуют ли какие-либо веб-сервисы или динамический API, чтобы узнать текущую задержку времени (или будущую задержку) для определенного часового пояса, например http://worldtimeengine.com/api/, но, возможно, бесплатно?
Я не уверен, что это неправильно?
http://en.wikipedia.org/wiki/Time_in_Argentina
Государства, которые обычно находятся в Аргентине на UTC -3, и что они иногда наблюдают летнее время. Что сделало бы UTC -2?
С другой стороны, в статье говорится, что они в настоящее время не наблюдают летнее время, чтобы сохранить их в UTC-3 (-10800)? Возможно, у вашей базы данных времени старая?