Timestamp Converter

Конвертація Unix-міток часу в читабельні дати та навпаки

Поточна Unix-мітка часу

1774458441

Wed, 25 Mar 2026 17:07:21 GMT

або

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

Unix-мітка часу (також відома як epoch time або POSIX time) — це кількість секунд, що минули з 1 січня 1970 року, 00:00:00 UTC. Цю дату називають Unix epoch. Кожна секунда збільшує лічильник на одиницю, надаючи кожному моменту часу єдине цілочисельне представлення. Конвертер Unix-міток часу перетворює це ціле число на читабельні формати дат, такі як ISO 8601, RFC 2822 або локалізовані рядки.

Unix-мітки часу — стандартний спосіб представлення часу в обчисленнях. Бази даних зберігають стовпці created_at та updated_at як цілі числа або мілісекундні мітки часу. Відповіді API містять мітки часу для заголовків кешу (Expires, Last-Modified), JWT-полів (iat, exp, nbf) та журналів подій. Файли журналів nginx, syslog та прикладних фреймворків використовують epoch time. Формат є однозначним, оскільки завжди представляє UTC без зміщень часового поясу чи переходу на літній час.

Конвертація між мітками часу та датами вручну є схильною до помилок. Значення на зразок 1711324800 не дає жодної візуальної підказки щодо дати, яку воно представляє. Цей інструмент конвертує Unix-мітки часу в читабельні дати та дати назад у мітки. Незалежно від того, чи ви зчитуєте поле exp у JWT, налагоджуєте запит до бази даних або перевіряєте мітку часу в журналі, він автоматично обробляє 10-значні (секунди) та 13-значні (мілісекунди) значення.

Навіщо використовувати цей конвертер міток часу?

Читання необроблених Unix-міток часу з журналів, баз даних або відповідей API вимагає або запам'ятовування epoch-математики, або написання одноразового коду. Цей конвертер працює у вашому браузері без налаштувань. Незалежно від того, чи потрібно декодувати термін дії JWT, перевірити рядок журналу або встановити TTL бази даних, результат доступний в один клік. Інструмент автоматично визначає, чи є значення 10-значною міткою в секундах чи 13-значною в мілісекундах, тому вам ніколи не доведеться вручну ділити на 1000. Вся обробка виконується локально у вашому браузері. Жодні дані не залишають вашу машину, тому мітки часу з внутрішніх систем та конфіденційних журналів залишаються приватними.

Миттєва конвертація
Введіть мітку часу або оберіть дату і одразу побачите результат. Без надсилання форм, без перезавантаження сторінки. Підтримує секунди та мілісекунди.
🔒
Обробка з пріоритетом приватності
Всі конвертації виконуються у вашому браузері за допомогою вбудованого об'єкта Date у JavaScript. Жодні дані не залишають вашу машину, тому мітки часу з внутрішніх систем залишаються приватними.
🔄
Двостороння конвертація
Конвертуйте Unix-мітки часу в дати та дати назад у мітки. Введіть значення в будь-якому напрямку та отримайте відповідний результат без перемикання між інструментами.
🌐
Кілька форматів виведення
Переглядайте мітку часу як UTC, місцевий час, ISO 8601 та відносний час одночасно. Копіюйте будь-який формат одним кліком.

Варіанти використання конвертера міток часу

Розробка фронтенду
Декодуйте мітки часу з відповідей REST API, щоб перевірити коректність відображення дат у різних часових поясах. Визначте, чи повертає API секунди чи мілісекунди.
Бекенд-розробка
Конвертуйте мітки часу бази даних під час налагодження запитів. Перевіряйте, чи значення created_at, updated_at та expires_at відповідають очікуваним датам після міграцій або змін часових поясів.
DevOps та SRE
Перекладайте epoch-значення з файлів журналів, панелей моніторингу (Grafana, Datadog) та систем сповіщень, щоб точно визначити початок інциденту або завершення розгортання.
QA та тестування
Генеруйте конкретні мітки часу для тестових даних. Перевіряйте, чи залежні від часу функції, такі як закінчення терміну дії токенів, TTL кешу та заплановані завдання, спрацьовують у правильний момент.
Інженерія даних
Конвертуйте стовпці з мітками часу під час перевірки необроблених даних з PostgreSQL, MySQL або сховищ даних. Підтвердіть, що ETL-конвеєри правильно зберігають інформацію про часовий пояс.
Навчання та освіта
Зрозумійте, як комп'ютери представляють час внутрішньо. Експериментуйте з крайовими випадками, такими як проблема Y2038, від'ємні мітки часу для дат до 1970 року та мілісекундна точність.

Довідкова таблиця Unix-міток часу

У таблиці нижче наведено відомі Unix-мітки часу та відповідні їм дати. Ці значення корисні для швидкої перевірки, тестування та розуміння діапазону 32-розрядних та 64-розрядних міток часу.

Мітка часуДата (UTC)Примітка
0Jan 1, 1970 00:00:00 UTCUnix epoch start
86400Jan 2, 1970 00:00:00 UTCExactly 1 day
946684800Jan 1, 2000 00:00:00 UTCY2K
1000000000Sep 9, 2001 01:46:40 UTC10-digit milestone
1234567890Feb 13, 2009 23:31:30 UTCAscending digits
1700000000Nov 14, 2023 22:13:20 UTCRecent 10-digit
2000000000May 18, 2033 03:33:20 UTCNext 10-digit milestone
2147483647Jan 19, 2038 03:14:07 UTCY2038 (signed 32-bit max)
4102444800Jan 1, 2100 00:00:00 UTCNext century

Порівняння форматів дати та часу

Різні системи та стандарти представляють один і той самий момент часу за допомогою різних рядкових форматів. Таблиця порівнює найпоширеніші формати, з якими ви зіткнетесь в API, журналах та базах даних.

ФорматПрикладПримітки
Unix (seconds)1711324800Integer, no timezone info
Unix (milliseconds)1711324800000Used by JavaScript Date.now()
ISO 86012024-03-25T00:00:00ZMachine-readable, includes timezone
RFC 2822Mon, 25 Mar 2024 00:00:00 +0000Email and HTTP headers
UTC stringMon, 25 Mar 2024 00:00:00 GMTDate.prototype.toUTCString()
Human readableMarch 25, 2024, 12:00:00 AMLocale-dependent, display only

Приклади коду

Конвертуйте між Unix-мітками часу та датами мовою програмування, з якою ви працюєте. Кожен приклад демонструє обидва напрямки: мітка часу → дата та дата → мітка часу.

JavaScript (browser / Node.js)
// Current Unix timestamp in seconds
Math.floor(Date.now() / 1000)  // → 1711324800

// Unix timestamp to Date object
const date = new Date(1711324800 * 1000)
date.toISOString()             // → "2024-03-25T00:00:00.000Z"
date.toUTCString()             // → "Mon, 25 Mar 2024 00:00:00 GMT"

// Date string to Unix timestamp
Math.floor(new Date('2024-03-25T00:00:00Z').getTime() / 1000)
// → 1711324800

// Millisecond timestamps (common in JS APIs)
Date.now()                     // → 1711324800000 (ms)
Date.parse('2024-03-25')       // → 1711324800000 (ms)
Python
import time
from datetime import datetime, timezone

# Current Unix timestamp
int(time.time())                                    # → 1711324800

# Unix timestamp to datetime
dt = datetime.fromtimestamp(1711324800, tz=timezone.utc)
dt.isoformat()                                      # → '2024-03-25T00:00:00+00:00'
dt.strftime('%Y-%m-%d %H:%M:%S %Z')                 # → '2024-03-25 00:00:00 UTC'

# Datetime string to Unix timestamp
dt = datetime.fromisoformat('2024-03-25T00:00:00+00:00')
int(dt.timestamp())                                  # → 1711324800

# Parse RFC 2822 dates (from email headers)
from email.utils import parsedate_to_datetime
parsedate_to_datetime('Mon, 25 Mar 2024 00:00:00 +0000').timestamp()
# → 1711324800.0
Go
package main

import (
    "fmt"
    "time"
)

func main() {
    // Current Unix timestamp
    now := time.Now().Unix() // → 1711324800

    // Unix timestamp to time.Time
    t := time.Unix(1711324800, 0).UTC()
    fmt.Println(t.Format(time.RFC3339))
    // → 2024-03-25T00:00:00Z

    // Parse a date string to Unix timestamp
    parsed, _ := time.Parse(time.RFC3339, "2024-03-25T00:00:00Z")
    fmt.Println(parsed.Unix())
    // → 1711324800

    // Millisecond timestamp
    ms := time.Now().UnixMilli() // → 1711324800000
    fmt.Println(now, ms)
}
CLI (date / bash)
# Current Unix timestamp
date +%s                                    # → 1711324800

# Convert timestamp to human-readable date (GNU date)
date -d @1711324800                         # → Mon Mar 25 00:00:00 UTC 2024

# Convert timestamp to ISO 8601
date -d @1711324800 --iso-8601=seconds      # → 2024-03-25T00:00:00+00:00

# macOS (BSD date) — slightly different flags
date -r 1711324800                          # → Mon Mar 25 00:00:00 UTC 2024

# Date string to timestamp (GNU date)
date -d "2024-03-25 00:00:00 UTC" +%s       # → 1711324800

Поширені запитання

У чому різниця між Unix-мітками часу в секундах та мілісекундах?
Unix-мітка часу в секундах є 10-значним цілим числом (до листопада 2286 року), тоді як мілісекундна мітка — 13-значна. JavaScript's Date.now() повертає мілісекунди. Більшість Unix-утиліт командного рядка та Python's time.time() повертають секунди. Для конвертації між ними перемножте секунди на 1000 або поділіть мілісекунди на 1000 та округліть вниз.
Що таке проблема 2038 року?
Системи, що зберігають Unix-мітки часу як знакове 32-розрядне ціле число, переповняться 19 січня 2038 року о 03:14:07 UTC. Максимальне значення знакового 32-розрядного цілого числа — 2 147 483 647 секунд від початку epoch. Після цього значення переходить до від'ємного числа, яке система інтерпретує як дату в грудні 1901 року. Сучасні 64-розрядні системи використовують 64-розрядні цілі числа і цій проблемі не піддаються.
Як конвертувати Unix-мітку часу в дату в JavaScript?
Створіть новий об'єкт Date, передавши мітку часу, помножену на 1000 (оскільки JavaScript використовує мілісекунди): new Date(1711324800 * 1000). Потім викличте .toISOString(), .toUTCString() або .toLocaleString(), щоб отримати потрібний формат. Для зворотного перетворення використайте Math.floor(new Date('2024-03-25').getTime() / 1000).
Чи можуть Unix-мітки часу представляти дати до 1970 року?
Так. Дати до Unix epoch (1 січня 1970 року) представляються від'ємними цілими числами. Наприклад, 31 грудня 1969 року о 23:59:59 UTC — це мітка -1. Більшість сучасних мов програмування коректно обробляють від'ємні мітки часу, хоча деякі старіші системи та бази даних можуть їх не підтримувати.
Чому API використовують Unix-мітки часу замість рядків дат?
Unix-мітки часу не залежать від часового поясу, компактні (одне ціле число проти рядка з 25+ символів) і тривіально порівнювані. Сортування, порівняння та обчислення тривалостей з цілими числами є швидшим, ніж розбір рядків дат. Вони також уникають неоднозначності локально-залежних форматів на зразок MM/DD/YYYY проти DD/MM/YYYY.
Як отримати поточну Unix-мітку часу з командного рядка?
У Linux та macOS виконайте date +%s, щоб вивести поточну мітку часу в секундах. У Windows з PowerShell використайте [DateTimeOffset]::UtcNow.ToUnixTimeSeconds(). Обидва повертають ціле число секунд від початку Unix epoch. Для мілісекундної точності в Linux використайте date +%s%3N, щоб безпосередньо додати мілісекундну складову.
У чому різниця між UTC та GMT у мітках часу?
Для практичних цілей в обчисленнях UTC та GMT позначають один і той самий час. UTC (Coordinated Universal Time) — сучасний стандарт, визначений атомними годинниками, тоді як GMT (Greenwich Mean Time) — застарілий астрономічний стандарт. Unix-мітки часу завжди базуються на UTC. Обидві позначки можуть з'являтися в форматованих рядках дат, але базове значення ідентичне.