Метка времени UNIX всегда в GMT? - PullRequest
32 голосов
/ 18 мая 2010

UNIX-метка всегда в GMT?

Я пытался запустить функцию php time ()

и когда я попытался преобразовать метку времени Unix из функции time (), вывод не похож на время компьютера.

Спасибо

Ответы [ 5 ]

50 голосов
/ 18 мая 2010

да, отметка времени UNIX показывает, сколько секунд прошло с эпохи времени unix в GMT+0

7 голосов
/ 18 мая 2010

Метка времени UNIX (эпоха А.К.А. Юникса) означает прошедшие секунды с 1 января 1970 года 00:00:00 UTC (универсальное время). Так что, если вам нужно время в определенной часовом поясе, вы должны преобразовать его.

Даже если это технически возможно, я бы порекомендовал альтернативные способы получения текущего времени (или любого другого времени), например getdate, который уже учитывает местный часовой пояс до возвращения.

6 голосов
/ 18 мая 2010

Да, time должен возвращать UTC. Если вы хотите, чтобы оно было переведено в местное время, вам нужна функция вроде ..., хм, позвольте мне подумать, .., да, вот и все, localtime :-)

Это даст вам более удобную форму с выделенными отдельными полями.

Перейдите по ссылкам выше для получения документации по PHP на каждой. Не уверен, что у PHP есть gmtime эквивалент.


И, кроме того, будьте очень внимательны при поиске в Интернете справочной страницы time с помощью man time - вы можете не получить то, что ожидаете. Вы определенно не получите того, что ожидаете, если вы ищете справочную страницу для man: man man.

То есть, если вы не ищете вещи, отличные от меня: -)

4 голосов
/ 03 сентября 2017

Технически, нет.

Даже если время эпохи - это среднее время, прошедшее с момента, когда 1/1/70 00:00:00 реальное «GMT» (UTC) не равно.

UTC необходимо несколько раз изменить время, чтобы учесть скорость замедления вращающейся земли.

Как все писали, большинство людей используют эпоху в UTC.

Вы можете прочитать больше в https://en.wikipedia.org/wiki/Unix_time.

0 голосов
/ 16 сентября 2010

Проверьте возвращаемое значение date_default_timezone_get () , чтобы увидеть часовой пояс по умолчанию. В ссылке также перечислены способы изменения значения, предпочтительным является установка date.timezone в php.ini.

...