Как спрашивает испытуемый; временные метки UNIX меняются в каждом часовом поясе?
Например, если бы я отправил запрос на другой адрес электронной почты на другой стороне мира, говоря: «Отправить электронное письмо, когда время 1397484936» , будет ли временная метка другого сервера на 12 часов отстать от моей?
unix-timestamp
Бен Поулсон
источник
источник
Ответы:
Определение метки времени UNIX не зависит от часового пояса. Отметка времени - это количество секунд (или миллисекунд), прошедших с абсолютного момента времени, полуночи 1 января 1970 года по всемирному координированному времени. (UTC - это время по Гринвичу без поправок на летнее время). Независимо от вашего часового пояса, временная метка представляет момент, который везде одинаков. Конечно, вы можете конвертировать туда и обратно в представление местного часового пояса (время 1397484936 - это такое-то местное время в Нью-Йорке или какое-то другое местное время в Джакарте), если хотите.
Статья на http://en.wikipedia.org/wiki/Unix_time впечатляет, если вы хотите прочитать ее подольше.
источник
in UTC time
. Есть два смещения: araw offset
иDST offset
. Например,America/New_York
необработанное смещение равно-18000
, а смещение летнего времени равно3600
, поэтому из любой метки времени UNIX вам нужно выполнить математические вычисленияUNIX + offset + dstOffset
, чтобы получить метку времени Нью-Йорка.Время Unix определяется как количество секунд, прошедших с 00:00:00 по всемирному координированному времени ( UTC ), четверг, 1 января 1970 г. Итак, ответ отрицательный.
источник
ЕСЛИ оба компьютера настроены правильно, а их часы установлены на правильный часовой пояс и значения UTC, они должны вернуть одно и то же значение.
Конечно, это большой IF. Почти наверняка разница между временем, сообщаемым двумя компьютерами, составляет не менее секунды, а чаще минут. И многие компьютеры настроены на неправильные настройки часового пояса и будут сообщать свое местное время, когда их спрашивают, а не UTC.
И в этом разница между теорией и практикой. Теоретически все одно и то же, на практике никогда не стоит полагаться на это.
источник
Временные метки Unix не меняются в зависимости от часовых поясов , они создаются для того, чтобы иметь стандартное время по всему миру.
ПРИМЕЧАНИЕ. - Метки времени рассчитываются на основе текущего времени на компьютере, поэтому не полагайтесь на них до тех пор, пока вы не уверены в настройках времени на участвующих машинах.
источник
Кто-то заявил, что «UTC - это время по Гринвичу без поправок на летнее время». Это просто неправда. GMT не имеет летнего времени. GMT измеряется в Гринвиче, Англия (в Военно-морской обсерватории) [0 долготы, но не 0 широты]. Всемирное координированное время измеряется на экваторе [0 долготы и 0 широты, который находится в океане у берегов Африки].
Что это меняет? Не имеет значения, "какое сейчас время суток?" Однако это имеет значение при исчислении года. Теперь вы думаете, что год будет измеряться в зависимости от местоположения центра (ядра) Земли, верно? Когда земное ядро вернулось в то же место, где оно было ~ 365 дней назад, это был год. Это не измеряется таким образом. Он измеряется тем, что конкретное место на Земле возвращается в то же место (относительно Солнца), которое было ~ 365 дней назад. Но период дня и года не делится поровну. Как только Земля вернется туда, где она была год назад, Земля будет смотреть не в том же направлении, что и в прошлом году, поэтому это пятно на Земле не смотрит в том же направлении, что было год назад. Находясь дальше на север, Гринвич не собирается вернуться в то же место (относительно Солнца), которое было в прошлом году в то же время, что и 0 Lat / 0 Long. Таким образом, если вы основываете определение на Гринвиче и 0/0, вы получите, хотя и немного, другой ответ на вопрос «сколько дней в году». Другими словами, когда данное пятно на Земле возвращается туда, где оно было год назад (относительно Солнца), ядро Земли не находится в том же месте, что было год назад, так какое место вы выбираете вопросы, потому что ядро Земли окажется в другом месте (относительно Солнца), чем это было год назад, если вы выберете другое место на Земле. хотя и несколько иной ответ на вопрос «сколько дней в году». Другими словами, когда данное пятно на Земле возвращается туда, где оно было год назад (относительно Солнца), ядро Земли не находится в том же месте, что было год назад, так какое место вы выбираете вопросы, потому что ядро Земли окажется в другом месте (относительно Солнца), чем это было год назад, если вы выберете другое место на Земле. хотя и несколько иной ответ на вопрос «сколько дней в году». Другими словами, когда данное пятно на Земле возвращается туда, где оно было год назад (относительно Солнца), ядро Земли не находится в том же месте, что было год назад, так какое место вы выбираете вопросы, потому что ядро Земли окажется в другом месте (относительно Солнца), чем это было год назад, если вы выберете другое место на Земле.
Ни UTC, ни GMT не имеют перехода на летнее время. Европа / Лондонское время, часовой пояс, в котором находится Гринвич, тоже. Но GMT этого не делает. GMT - это то, что американцы называют «стандартным временем», то есть без летнего времени.
Возвращаясь к вопросу, Epoch time технически не имеет часового пояса. Он основан на конкретном моменте времени, который так уж и совпадает с «четным» временем UTC (в точное начало года, десятилетия и т. Д.). Если эта концепция не укладывается в ваш мозг и помогает думать о времени Эпохи как о времени в формате UTC, продолжайте. Вы в хорошей компании, и по большому счету это не имеет значения. Вы когда-нибудь видели судебные процессы, в которых сомоену присуждают 1 доллар. Это своего рода вердикт типа «ты прав, но это не имеет особого значения». Если кто-то подаст на вас в суд за то, что вы сказали, что время эпохи находится в часовом поясе UTC, он выиграет 1 доллар. Это не купит им чашку кофе в любом Starbucks в любом часовом поясе на планете.
источник