UNIX Timestamp Конвертер: Онлайн Преобразователь Времени
Текущий UNIX timestamp
Timestamp → Дата и время
Дата и время → Timestamp
UNIX Timestamp Конвертер (онлайн преобразователь UNIX времени)
Этот UNIX timestamp конвертер позволит вам быстро преобразовать время UNIX (epoch time / POSIX time) в дату и время и наоборот. Он поддерживает timestamp в секундах и миллисекундах, отображает местное время, UTC и ISO 8601, а результаты можно скопировать одним кликом.
Что такое UNIX timestamp (epoch time / POSIX time)?
UNIX timestamp — это число, выражающее время как количество секунд с 1 января 1970 года 00:00:00 UTC (так называемая UNIX-эпоха). На практике это один из наиболее часто используемых форматов для хранения и передачи даты и времени в системах, базах данных, API и журналах.
Пример: 1700000000 соответствует дате 14 ноября 2023 года 22:13:20 UTC.
Почему именно 1 января 1970 года?
Начало эпохи (1970-01-01) было выбрано при разработке UNIX как практическая отправная точка: оно близко к периоду создания системы и позволяет выполнять простые вычисления времени.
UNIX timestamp в секундах vs. миллисекундах
UNIX timestamp чаще всего встречается в двух видах:
| Формат timestamp | Пример | Типичное использование |
|---|---|---|
| Секунды (с) | 1700000000 | базы данных, бэкенд, API, файлы |
| Миллисекунды (мс) | 1700000000000 | JavaScript (Date.now()), аналитика, подробные логи |
Как определить, какой у вас?
- Секунды для «сегодняшних» дат обычно имеют 10 цифр.
- Миллисекунды обычно имеют 13 цифр и примерно в 1000 раз больше.
- Ориентировочно: если значение > 10¹², это почти наверняка миллисекунды.
Как пользоваться UNIX timestamp конвертером
1) Timestamp → Дата и время
- Введите UNIX timestamp в поле или нажмите Сейчас (текущее время UNIX).
- Если timestamp указан в миллисекундах, активируйте опцию Миллисекунды.
- Нажмите Конвертировать (или нажмите Enter).
- Отобразится преобразование в местное время, UTC и ISO 8601.
- Нажав на результат, вы скопируете его в буфер обмена.
2) Дата и время → Timestamp
- Выберите дату и время в форме.
- Нажмите Конвертировать.
- Результат будет представлен как timestamp в секундах и миллисекундах.
Где чаще всего используется UNIX timestamp?
Время UNIX встречается практически везде, где в IT работают со временем:
- Базы данных – хранение и сравнение времени в MySQL, PostgreSQL, SQLite и т.д.
- API – REST/GraphQL часто возвращает время как timestamp (удобная сериализация).
- Логи и мониторинг – точная сортировка событий по времени.
- Git – коммиты содержат временные данные.
- Файловые системы – время создания/изменения/доступа (mtime/ctime/atime и т.д.).
- JWT – поля
iat(issued at) иexp(expires) обычно представлены в секундах эпохи. - Linux/Unix shell –
date +%sвозвращает текущий timestamp. - JavaScript –
Date.now()возвращает время в миллисекундах.
Практические примеры преобразования времени UNIX
JavaScript (timestamp ↔ дата)
// Текущий UNIX timestamp в секундах
const tsSeconds = Math.floor(Date.now() / 1000);
// Текущий timestamp в миллисекундах
const tsMs = Date.now();
// Timestamp (с) -> дата
const dateFromSeconds = new Date(1700000000 * 1000);
console.log(dateFromSeconds.toISOString());
// Дата -> timestamp (с)
const ts = Math.floor(new Date("2024-01-01T00:00:00Z").getTime() / 1000);
console.log(ts);
Python (timestamp ↔ datetime)
import time
from datetime import datetime, timezone
# Текущий timestamp в секундах
ts = int(time.time())
# Timestamp -> datetime (UTC)
dt_utc = datetime.fromtimestamp(1700000000, tz=timezone.utc);
# Дата -> timestamp
ts2 = int(datetime(2024, 1, 1, tzinfo=timezone.utc).timestamp());
SQL (MySQL)
-- Текущий UNIX timestamp (с)
SELECT UNIX_TIMESTAMP();
-- Timestamp -> дата
SELECT FROM_UNIXTIME(1700000000);
-- Дата -> timestamp
SELECT UNIX_TIMESTAMP('2024-01-01 00:00:00');
Часовые пояса: UTC, местное время и ISO 8601
UNIX timestamp всегда в UTC – он не содержит информации о часовом поясе или летнем времени. Преобразование в местное время зависит от настроек браузера, сервера или используемой библиотеки.
Понятия, которые полезно знать:
- UTC – глобальный стандарт без летнего/зимнего времени.
- GMT – для обычного использования практически совпадает с UTC.
- Смещение – разница относительно UTC (например, Москва UTC+3).
Ограничения UNIX timestamp и Проблема 2038 года
Проблема 2038 года (Year 2038 Problem)
На некоторых 32-битных системах timestamp хранится как int32 с максимальным значением 2 147 483 647, что соответствует 19 января 2038 года 03:14:07 UTC. При превышении этого значения может произойти переполнение и неправильное отображение времени. Современные 64-битные системы, как правило, не имеют этой проблемы.
Диапазон 64-битного времени UNIX
64-битные значения охватывают чрезвычайно широкий период (на практике «навечно»). Отрицательные значения соответствуют дате до 1 января 1970 года.
FAQ – часто задаваемые вопросы о UNIX timestamp
UNIX timestamp в UTC или в местном времени?
UNIX timestamp всегда находится в UTC. Местное время формируется только при преобразовании в соответствии с часовым поясом. Поэтому конвертер обычно отображает как UTC, так и местное время.Как определить, timestamp в секундах или миллисекундах?
Для текущего времени timestamp в секундах обычно имеет 10 цифр. В миллисекундах он обычно имеет 13 цифр и примерно в 1000 раз больше. Ориентировочно: значение > 10¹² обычно означает миллисекунды.Что означает отрицательный UNIX timestamp?
Отрицательный timestamp представляет дату до 1 января 1970 года. Например,-1 соответствует 31 декабря 1969 года 23:59:59 UTC.
Как преобразовать UNIX timestamp в SQL?
В MySQL вы используетеFROM_UNIXTIME(timestamp) и обратно UNIX_TIMESTAMP(дата). В PostgreSQL это обычно TO_TIMESTAMP(timestamp) и EXTRACT(EPOCH FROM дата).