Конвертер часових міток Unix
Конвертуйте між часовими мітками Unix та зрозумілими датами.
177911068417791106841232026-05-18T13:24:44.123ZЩо таке Unix-мітка часу?
Unix-мітка часу (також звана Epoch time або POSIX time) — це кількість секунд, що минули з 1 січня 1970 року о 00:00:00 UTC. Цей момент називається Unix Epoch. Мітки часу надають універсальний, незалежний від часового поясу спосіб представлення конкретного моменту часу у вигляді одного числа, роблячи їх стандартом для зберігання та передачі дат у комп'ютерних системах.
Наприклад, мітка часу 1700000000 відповідає 14 листопада 2023 року о 22:13:20 UTC. Мітки часу збільшуються на одиницю щосекунди і завжди у форматі UTC, що усуває неоднозначність часових поясів. Ця простота пояснює, чому мітки часу використовуються в базах даних, API, файлах журналів, системах кешування та практично в кожному серверному застосунку.
Секунди та мілісекунди
Більшість Unix-систем і мов, таких як Python, PHP та Ruby, використовують мітки часу в секундах (10-значне число станом на 2024 рік). Однак JavaScript, Java та деякі бази даних використовують мілісекунди (13-значне число). Цей інструмент автоматично визначає формат — якщо число має 13 цифр, він розглядає його як мілісекунди. Також можна вручну перемикатися між двома форматами.
Як користуватися цим інструментом
Введіть Unix-мітку часу (в секундах або мілісекундах), щоб перетворити її на читабельну дату і час, або виберіть дату й час, щоб отримати відповідну мітку часу. Поточна мітка часу відображається в реальному часі для довідки. Інструмент відображає результати як у UTC, так і у вашому місцевому часовому поясі.
Поширені способи використання міток часу
- Журналювання: запис точного часу подій у журналах застосунків і серверів для налагодження та аудиту.
- Бази даних: зберігання дат у стандартизованому, незалежному від часового поясу форматі, що коректно сортується.
- API: надійна передача дат між системами без неоднозначності розбору часових поясів.
- Кешування: відстеження часу створення та закінчення терміну дії кешу за допомогою простих числових порівнянь.
- Обмеження швидкості: застосування обмежень запитів шляхом порівняння поточного часу зі збереженими мітками.
Важливі дати Unix-міток часу
- Unix Epoch (1 січня 1970 року): мітка часу 0 — початкова точка для всього Unix-часу.
- Y2K (1 січня 2000 року): мітка часу 946 684 800.
- Проблема 2038 року (19 січня 2038 року): 32-бітні знакові мітки часу переповнюються при 2 147 483 647. Системи, що використовують 32-бітний час, перейдуть до від'ємних чисел або впадуть у збій.
- Мільярдний (9 вересня 2001 року): мітка часу 1 000 000 000 — перша 10-значна мітка часу.
Проблема 2038 року
Багато старих систем зберігають мітки часу як 32-бітні знакові цілі числа, що можуть містити значення до 2 147 483 647. Це максимальне значення буде досягнуто 19 січня 2038 року о 03:14:07 UTC. Після цього моменту 32-бітні мітки часу переповняться і перейдуть до від'ємних значень, потенційно представляючи дати у 1901 році. Сучасні 64-бітні системи не зазнають впливу — 64-бітна мітка часу не переповниться ще протягом 292 мільярдів років.
Чи захищені мої дані?
Так. Усі перетворення відбуваються повністю у вашому браузері за допомогою об'єкта Date JavaScript. Ваші дані ніколи не залишають ваш пристрій. Жодні мітки часу або дати не записуються, не зберігаються та не передаються.
Часті запитання
Чи враховують Unix-мітки часу секунди координації?
Ні. Unix-мітки часу навмисно ігнорують секунди координації. Кожен день розглядається як рівно 86 400 секунд. Коли відбувається секунда координації, Unix-мітка часу або повторює секунду, або пропускає її, залежно від операційної системи. Це спрощення робить арифметику міток часу зрозумілою.
Як отримати поточну Unix-мітку часу в коді?
В JavaScript: Math.floor(Date.now() / 1000). У Python: import time; int(time.time()). У PHP: time(). У Bash: date +%s. Усі повертають поточний час як Unix-мітку часу в секундах.