Unix timestamp
Переводит Unix timestamp ↔ дата (в обе стороны). Секунды, миллисекунды, локальное и UTC-представление, день недели, относительное время. Плюс справочник «культовых» timestamp.
01
Конвертер timestamp ↔ дата
02
Известные Unix timestamp
клик по строке — подставить в конвертер03
Об Unix-эпохе
Unix epochPOSIX
1970-01-01 00:00:00 UTC
Момент начала отсчёта — 1 января 1970 года, 00:00:00 UTC. Timestamp — это количество секунд, прошедших с этого момента. Формат независим от часового пояса и языка, поэтому его выбрали как универсальный. Он используется во всех Unix-подобных системах, JavaScript, Python и практически всех API.
Секунды vs миллисекунды10 vs 13
1 741 434 000 = сек · ...000 = мс
Классический Unix-timestamp — в секундах, 10-значное число до 2286 года. JavaScript использует миллисекунды (Date.now()), 13 знаков. Микросекунды (16 знаков) — в высокоточных системах. Наш конвертер определяет масштаб автоматически по длине числа.
Y2K38 problem2038-01-19
2 147 483 647 → int32 overflow
На 03:14:07 UTC 19 января 2038 года 32-битный signed int переполнится, и системы, хранящие timestamp в int32, «перескочат» в 1901 год. Проблема касается C, старых Unix, embedded-систем. Современные ОС и БД используют 64-битный int — им хватит на 292 миллиарда лет.
UTC — единыйЧасовые зоны
timestamp одинаков во всём мире
Один и тот же timestamp в Москве, Токио и Нью-Йорке показывает один и тот же момент времени — разница только в локальном представлении. Именно поэтому timestamp удобно использовать в логах и БД: не нужно возиться с зонами при сравнении.