Временная метка UNIX всегда по Гринвичу?
Я попытался запустить функцию php time()
и когда я попытался преобразовать метку времени unix из функции time(), вывод не похож на компьютерное время.
Спасибо
Временная метка UNIX всегда по Гринвичу?
Я попытался запустить функцию php time()
и когда я попытался преобразовать метку времени unix из функции time(), вывод не похож на компьютерное время.
Спасибо
да, временная метка UNIX представляет, сколько секунд прошло с эпохи unix-time в GMT+0
Технически нет.
Несмотря на то, что время эпохи – это среднее количество секунд, прошедших с 1/1/70 00:00:00
, настоящее "GMT" (UTC) – это не так.
Время в формате UTC нужно было изменить несколько раз, чтобы учесть замедление скорости вращения Земли.
Как все писали, большинство людей используют эпоху в UTC.
Вы можете прочитать больше на https://en.wikipedia.org/wiki/Unix_time.
Отметка времени UNIX (также известная как эпоха Unix) означает количество секунд, прошедших с 00:00:00 UTC (всемирное время) 1 января 1970 года. Итак, если вам нужно время в определенном часовом поясе, вы должны его преобразовать.
Хотя технически это возможно, я бы порекомендовал альтернативные способы получения текущего времени (или любого другого времени), такие как getdate
, который уже учитывает местный часовой пояс перед возвратом.
time()
также учитывает местный часовой пояс
- person zerkms; 18.05.2010
Да, time
должен возвращать UTC. Если вы хотите, чтобы оно было преобразовано в местное время, вам нужна такая функция, как, ..., хм, дайте подумать, .., да, это все, localtime
:-)
Это даст вам более удобную форму с отдельными полями.
Следуйте приведенным выше ссылкам для получения документации PHP по каждому из них. Не уверен, что PHP имеет эквивалент gmtime
.
Кроме того, будьте очень осторожны при поиске в сети time
man-страницы с man time
— вы можете не получить того, что ожидаете. Вы определенно не получите того, что ожидаете, если будете искать справочную страницу для самого man
: man man
.
То есть, если вы не ищете другие вещи, чем я :-)
Проверьте возвращаемое значение date_default_timezone_get(). чтобы узнать часовой пояс по умолчанию. В ссылке также перечислены способы изменения значения, предпочтительным из которых является установка date.timezone в php.ini.