UNIX всегда устанавливает метку времени в GMT?

UNIX всегда устанавливает метку времени в GMT?

Я пытался выполнить время функции php ()

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

Спасибо

34
задан bbnn 18 May 2010 в 01:00
поделиться

3 ответа

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

53
ответ дан 27 November 2019 в 16:35
поделиться

UNIX timestamp (она же эпоха Unix) означает прошедшие секунды с 1 января 1970 года 00:00:00 UTC (всемирное время). Поэтому, если вам нужно время в определенном часовом поясе, вы должны конвертировать его.

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

7
ответ дан 27 November 2019 в 16:35
поделиться

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

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

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


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

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

.
6
ответ дан 27 November 2019 в 16:35
поделиться
Другие вопросы по тегам:

Похожие вопросы: