Как это работает
Unix-время — число секунд, прошедших с 1 января 1970 года, 00:00:00 UTC (эпоха Unix). Оно не зависит от часовых поясов и високосных секунд, поэтому именно его используют в базах данных, API и логах. Большое число в верхней части страницы — текущее время, оно обновляется каждую секунду.
При переводе timestamp в дату формат определяется автоматически: значения по модулю от 10¹² считаются миллисекундами, меньшие — секундами. Граница выбрана так, что сегодняшние даты попадают в правильный разряд: сейчас это примерно 1,76 × 10⁹ секунд или 1,76 × 10¹² миллисекунд. Даты ранее 1970 года (отрицательный timestamp) тоже поддерживаются.
При переводе даты в timestamp выберите, как трактовать введённое время: как локальное время вашего устройства или как UTC. Результат показывается и в секундах, и в миллисекундах — копируйте тот формат, который ждёт ваша система. Диапазон ограничен точностью JavaScript: примерно ±285 тысяч лет от эпохи.
Разберём на числе. Вводите timestamp 1735689600 — конвертер видит десятизначное значение, трактует его как секунды и выдаёт 1 января 2025 года, 00:00:00 UTC. Тот же момент в миллисекундах выглядит так:
1735689600000
Обратная операция симметрична: ставите дату 01.01.2025 00:00 и режим UTC — получаете те же 1735689600. Если выбрать локальное время, результат сдвинется на ваше смещение: в Екатеринбурге (UTC+5) полночь первого января даст 1735671600, то есть на 18 000 секунд меньше.
Если под рукой нет конвертера, timestamp можно прикинуть арифметикой: умножьте число полных дней от эпохи на 86 400 — столько секунд в сутках. Полночь 1 января 2025 года наступила через 20 089 дней после эпохи:
20089 × 86400 = 1735689600
Секунды против миллисекунд
Главный источник путаницы — разрядность. Unix-утилиты, большинство API и языки вроде Python работают в секундах, а JavaScript и Java — в миллисекундах. Если API вернул число с тремя лишними нулями, дата «уедет» на тысячи лет вперёд; если, наоборот, отбросить миллисекунды делением, проверьте, куда делся остаток, — иногда важна точность до долей секунды. Конвертер снимает вопрос: он смотрит на величину числа, сам выбирает разряд и показывает оба варианта.
Часовой пояс решает всё
Timestamp сам по себе не знает ни про Москву, ни про UTC — это просто счётчик. Пояс появляется только при переводе числа в читаемую дату. Поэтому один и тот же момент в разных поясах выглядит по-разному, а один и тот же «локальный полдень» в разных городах — это разные timestamp. Передаёте дату в чужую систему — договоритесь, в каком поясе трактуется время: расхождение в несколько часов почти всегда означает, что одна сторона считает в UTC, а другая — в локальном времени.
Ещё одна тонкость: unix-время не считает високосные секунды, которые изредка добавляют к UTC для синхронизации с вращением Земли. Каждые сутки в нём ровно 86 400 секунд, поэтому на длинных интервалах unix-время и астрономическое слегка расходятся — для бытовых и программных задач этой разницей пренебрегают.
Где встречается unix-время
Практически везде, где программа хранит или сравнивает моменты времени:
- поля created_at и updated_at в базах данных;
- сроки действия токенов, сессий и JWT;
- метки событий в логах и системах мониторинга;
- заголовки кэширования и cookies в HTTP.
Причина простая: целое число легко хранить, сортировать и сравнивать, а разница двух timestamp сразу даёт длительность в секундах — без календарной арифметики с месяцами разной длины. Поэтому unix-время стало универсальным форматом обмена датами между системами.
Частые вопросы
Чем отличаются timestamp в секундах и миллисекундах?
В миллисекундах значение в тысячу раз больше. JavaScript (Date.now) и Java используют миллисекунды, Unix-утилиты и большинство API — секунды. Конвертер определяет формат по величине числа.
Почему 1970 год называется эпохой Unix?
Так решили авторы первых версий Unix: отсчёт времени в системе начался с полуночи 1 января 1970 года по UTC. Даты раньше эпохи кодируются отрицательными числами.
Что будет 19 января 2038 года?
В этот день 32-битный счётчик секунд переполнится (проблема 2038 года). Современные 64-битные системы, включая этот конвертер, ей не подвержены.
Timestamp одинаковый во всём мире?
Да, это абсолютное число секунд от эпохи, без часовых поясов. Различия возникают только при превращении timestamp в читаемую дату — тут и нужен выбор пояса.
Как узнать текущий timestamp?
Он показан в верхней части этой страницы и обновляется каждую секунду. В коде текущее время получают через Date.now() в JavaScript, time() в PHP или time.time() в Python.
Почему конвертер показывает дату со сдвигом на несколько часов?
Почти наверняка дело в часовом поясе: одна сторона трактует время как UTC, другая — как локальное. Переключите режим и сравните результаты — сдвиг совпадёт с вашим смещением от UTC.