Інструмент перетворення Unix-міток часу

Професійний інструмент для перетворення Unix-міток часу, що підтримує двостороннє перетворення між мітами часу та датою-часом, автоматично розпізнає міти часу (секундні: 9–10 цифр, мілісекундні: 13 цифр, мікросекундні: 16 цифр, наносекундні: 19 цифр) за кількістю цифр. Надає три режими перегляду: локальний час, час UTC та час вибраного часового поясу, підтримує декілька карток для одночасного порівняння, містить вбудовані діапазони недавніх міток часу та поширені проміжки часу для розробки, налагодження та повсякденних перетворень. Адаптивний інтерфейс, миттєве перетворення при введенні, автоматичне оновлення результатів під час зміни часових поясів, усі операції виконуються локально у вашому браузері, що забезпечує конфіденційність та безпеку.

Поточний час

Поточна мітка часу (секунди)
—
Поточний час
—

Мітка часу → Дата

Підтримує секундні, мілісекундні, мікросекундні та наносекундні мітки часу, автоматичне визначення за кількістю цифр (9–10 цифр = секунди, 13 цифр = мілісекунди, 16 цифр = мікросекунди, 19 цифр = наносекунди)

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

Дата → Мітка часу

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

Інструмент перетворення кількох міток часу у дату-час

Інструмент перетворення кількох міток часу у дату-час

Інструмент перетворення кількох дат у мітки часу

Інструмент перетворення кількох дат у мітки часу

Інструкція з використання

Цей інструмент призначений для швидкого виконання двосторонньої конверсії між Unix-мітками часу та датою-часом у різних сценаріях. Підтримує точність у секундах та мілісекундах, дозволяє вибрати цільовий часовий пояс для порівняльного відображення. Має однокартковий та багатокартковий конвертери. Конверсія виконується під час введення, результати автоматично оновлюються при зміні часового поясу. Також містить вбудовані останні діапазони часу та поширені часові проміжки для задоволення потреб розробничої налагодки та щоденних конверсій.

Автоматичне визначення: Інструмент автоматично визначає точність за кількістю цифр: секунди (9-10 цифр), мілісекунди (13), мікросекунди (16) та наносекунди (19) — ручний вибір одиниць не потрібен.
Часовий пояс: Відображає місцевий час та час UTC, що зручно для використання в різних часових поясах.

Можливості інструменту

  • Конвертує під час введення з автоматичним розпізнаванням міток часу в секундах/мілісекундах/мікросекундах/наносекундах.
  • Підтримка вибору та відображення часових поясів у всьому світі: три режими відображення — місцевий час, UTC та вибраний часовий пояс.
  • Кілька карток конвертера для зручного пакетного порівняння.
  • Адаптивний інтерфейс та зручне використання за допомогою клавіатури, висока доступність.
  • Вбудовані останні діапазони часу та поширені часові проміжки для копіювання та використання.

Що таке мітка часу?

Unix-мітка часу — це загальна кількість секунд або мілісекунд, що минули з 01.01.1970 00:00:00 UTC (Unix Epoch).

Мітка часу — це число, що представляє час, зазвичай в секундах або мілісекундах.

Початкова точка мітки часу — це 00:00:00 UTC 1 січня 1970 року, яку називають Unix Epoch.

Мітки часу спочатку використовувалися в операційних системах 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 1 січня 1970 року), переповниться після 03:14:07 UTC 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');