Конвертер Unix-времени

Двунаправленный инструмент для преобразования Unix/Linux-меток времени в дату и время, с поддержкой сравнения в нескольких часовых поясах.

Текущее время

Текущая временная метка (секунды)
1766507716
Текущее время
2025-12-23 16:35:16

Преобразовать временную метку в дату

Результат преобразования(автоматически)

Преобразовать дату в временную метку

Результат преобразования(автоматически)

Конвертер нескольких временных меток в дату и время

Конвертер нескольких временных меток в дату и время

Конвертер нескольких дат в временные метки

Конвертер нескольких дат в временные метки

Инструкция по использованию

Этот инструмент предназначен для быстрого двустороннего преобразования Unix - временных меток и дат в различных сценариях. Поддерживается точность в секундах и миллисекундах, а также можно выбрать целевой часовой пояс для сравнительного отображения. Предоставляются одиночные и множественные преобразователи. Преобразование происходит сразу при вводе данных, при смене часового пояса результаты автоматически обновляются. Также встроены недавние временные диапазоны и часто используемые временные интервалы, что удовлетворяет потребности разработки, отладки и повседневных расчетов.

Автоматическое распознавание: Инструмент автоматически определяет, является ли введенное значение временной меткой в секундах (10 цифр) или миллисекундах (13 цифр)
Часовой пояс: Отображает местное время и UTC - время, что удобно для использования в разных часовых поясах

Особенности инструмента

  • Преобразование сразу при вводе, поддерживает автоматическое распознавание временных меток в секундах/миллисекундах
  • Поддерживает выбор и отображение глобальных часовых поясов: местный, UTC, выбранный часовой пояс - три вида представления
  • Множественные преобразовательные карточки для удобного массового сравнения
  • Адаптивный интерфейс и удобство работы с клавиатурой, хорошая доступность
  • Встроены недавние временные диапазоны и часто используемые временные интервалы, можно скопировать и использовать сразу

Что такое временная метка?

Unix - временная метка (Unix Timestamp) представляет собой общее количество секунд или миллисекунд, прошедших с 00:00:00 UTC 1 января 1970 года (Unix Epoch).

Временная метка - это числовое представление времени, обычно измеряемое в секундах или миллисекундах.

Начальная точка временной метки - 00:00:00 UTC 1 января 1970 года, это время называется Unix - эпоха.

Временные метки изначально использовались в операционной системе Unix, поэтому их часто называют Unix - временными метками.

Временные метки широко используются в программировании и сетевом взаимодействии, особенно в веб - разработке.

Общие уровни точности: секунды (например, 1735689600) и миллисекунды (например, 1735689600000). При представлении даты и времени, связанных с часовым поясом, требуется форматирование с учетом часового пояса.

Недавние временные метки (на основе глобального часового пояса)

Распространенные временные метки (продолжительность)

1 минута
60 Секунды
1 час
3600 Секунды
1 день
86400 Секунды
1 неделя
604800 Секунды
1 месяц (по 30 дням)
2592000 Секунды
1 год (по 365 дням)
31536000 Секунды

Проблема 2038 года для временных меток

Проблема 2038 года относится к проблеме переполнения 32 - битного знакового целого числа при хранении Unix - временной метки (в секундах, начиная с 00:00:00 UTC 1970 - 01 - 01) после 03:14:07 19 января 2038 года.

Поскольку диапазон 32 - битного знакового целого числа составляет от - 2 147 483 648 до 2 147 483 647, а временная метка на 03:14:07 UTC 19 января 2038 года равна 2 147 483 647, то после этой точки времени 32 - битное знаковое целое число не сможет представить последующие временные метки.

Больше всего пострадают старые системы или программы, использующие 32 - битный тип time_t. Современные системы обычно используют 64 - битные значения (например, 64 - битные целые числа в миллисекундах), поэтому у них этой проблемы нет.

Рекомендуется использовать 64 - битные временные метки или библиотеки времени, поддерживающие большой диапазон дат.

Как получить/преобразовать временную метку с помощью языков программирования

JavaScript
Получить текущую временную метку
Math.floor(Date.now() / 1000); // seconds
Date.now(); // milliseconds
Временная метка → Дата
new Date(1735689600 * 1000).toISOString();
Дата → Временная метка
new Date('2025-01-01T00:00:00Z').getTime();
PHP
Получить текущую временную метку
time();                // seconds
intval(microtime(true) * 1000); // milliseconds
Временная метка → Дата
date('Y-m-d H:i:s', 1735689600);
Дата → Временная метка
strtotime('2025-01-01 00:00:00');
Python
Получить текущую временную метку
import time

int(time.time())        # seconds
int(time.time() * 1000) # milliseconds
Временная метка → Дата
import datetime

datetime.datetime.utcfromtimestamp(1735689600).isoformat()
Дата → Временная метка
import datetime

int(datetime.datetime(2025,1,1,0,0,0,tzinfo=datetime.timezone.utc).timestamp())
Go
Получить текущую временную метку
import "time"

time.Now().Unix()      // seconds
time.Now().UnixMilli() // milliseconds
Временная метка → Дата
import "time"

time.Unix(1735689600, 0).UTC().Format(time.RFC3339)
Дата → Временная метка
import "time"

ts := time.Date(2025,1,1,0,0,0,0,time.UTC).Unix()
Rust
Получить текущую временную метку
use chrono::Utc;

let now = Utc::now();
let sec = now.timestamp();        // seconds i64
let ms  = now.timestamp_millis(); // milliseconds i128
Временная метка → Дата
use chrono::{DateTime, NaiveDateTime, Utc};

let dt: DateTime = NaiveDateTime::from_timestamp_opt(1735689600, 0)
    .unwrap()
    .and_utc();
let iso = dt.to_rfc3339();
Дата → Временная метка
use chrono::DateTime;

let ts = DateTime::parse_from_rfc3339("2025-01-01T00:00:00Z")
    .unwrap()
    .timestamp();
SQL
Получить текущую временную метку
-- MySQL / MariaDB
SELECT UNIX_TIMESTAMP();

-- PostgreSQL
SELECT EXTRACT(EPOCH FROM NOW())::bigint;

-- SQLite
SELECT strftime('%s', 'now');
Временная метка → Дата
-- MySQL / MariaDB
SELECT FROM_UNIXTIME(1735689600);

-- PostgreSQL
SELECT to_timestamp(1735689600) AT TIME ZONE 'UTC';

-- SQLite
SELECT datetime(1735689600, 'unixepoch');
Дата → Временная метка
-- MySQL / MariaDB
SELECT UNIX_TIMESTAMP('2025-01-01 00:00:00');

-- PostgreSQL
SELECT EXTRACT(EPOCH FROM TIMESTAMP '2025-01-01 00:00:00+00')::bigint;

-- SQLite
SELECT strftime('%s', '2025-01-01 00:00:00');