Конвертор на UNIX временски печат - Онлајн алатка

Тековен UNIX временски печат

Секунди
Милисекунди

Временски печат → Датум и време


Датум и време → Временски печат

Конвертор на UNIX временски печат (онлајн претворач на UNIX време)

Овој конвертор на UNIX временски печат ви овозможува брзо да го претворите UNIX времето (epoch time / POSIX time) во датум и време и обратно. Поддржува временски печат во секунди и милисекунди, прикажува локално време, UTC и ISO 8601, а резултатите може да се копираат со еден клик.


Што е UNIX временски печат (epoch time / POSIX time)?

UNIX временскиот печат е број кој го изразува времето како број на секунди од 1 јануари 1970 00:00:00 UTC (т.н. UNIX епоха). Во пракса, тоа е еден од најчесто користените формати за зачувување и пренос на датум и време во системи, бази на податоци, API и логирање.

Пример: 1700000000 одговара на датумот 14 ноември 2023 22:13:20 UTC.

Зошто токму 1. 1. 1970?

Почетокот на епохата (1970-01-01) беше избран при дизајнирањето на UNIX како практична референтна точка: тој е блиску до периодот на создавање на системот и овозможува едноставни пресметки на времето.


UNIX временски печат во секунди наспроти милисекунди

UNIX временскиот печат најчесто се појавува во две форми:

Формат на временски печатПримерТипична употреба
Секунди (s)1700000000бази на податоци, backend, API, датотеки
Милисекунди (ms)1700000000000JavaScript (Date.now()), аналитика, детални логови

Како да препознаете што имате?

  • Секундите за „денешни“ податоци обично имаат 10 цифри.
  • Милисекундите обично имаат 13 цифри и се приближно 1000 пати поголеми.
  • Ориентационо: ако вредноста е > 10¹², речиси сигурно се работи за милисекунди.

Како да го користите конверторот на UNIX временски печат

1) Временски печат → Датум и време

  1. Внесете го UNIX временскиот печат во полето, или кликнете на Сега (тековно UNIX време).
  2. Ако временскиот печат е во милисекунди, активирајте ја опцијата Милисекунди.
  3. Кликнете на Претвори (или притиснете Enter).
  4. Ќе се прикаже конверзијата во локално време, UTC и ISO 8601.
  5. Со кликнување на резултатот, ќе го копирате во таблата со исечоци.

2) Датум и време → Временски печат

  1. Изберете датум и време во формуларот.
  2. Кликнете на Претвори.
  3. Резултатот ќе го добиете како временски печат во секунди и милисекунди.

Каде најчесто се користи UNIX временскиот печат?

UNIX времето ќе го сретнете практично секаде каде што се работи со време во IT:

  • Бази на податоци – зачувување и споредување на времиња во MySQL, PostgreSQL, SQLite итн.
  • API – REST/GraphQL често враќаат време како временски печат (лесна серијализација).
  • Логови и мониторинг – прецизно подредување на настаните во времето.
  • Git – комитите содржат временски податоци.
  • Датотечни системи – времиња како mtime/ctime/atime (последна промена итн.).
  • JWT – тврдењата iat (издадено во) и exp (истекува) типично се во епохални секунди.
  • Linux/Unix shelldate +%s го враќа тековниот временски печат.
  • JavaScriptDate.now() го враќа времето во милисекунди.

Практични примери за конверзија на UNIX време

JavaScript (временски печат ↔ датум)

// Тековен UNIX временски печат во секунди
const tsSeconds = Math.floor(Date.now() / 1000);

// Тековен временски печат во милисекунди
const tsMs = Date.now();

// Временски печат (s) -> датум
const dateFromSeconds = new Date(1700000000 * 1000);
console.log(dateFromSeconds.toISOString());

// Датум -> временски печат (s)
const ts = Math.floor(new Date("2024-01-01T00:00:00Z").getTime() / 1000);
console.log(ts);

Python (временски печат ↔ datetime)

import time
from datetime import datetime, timezone

# Тековен временски печат во секунди
ts = int(time.time())

# Временски печат -> datetime (UTC)
dt_utc = datetime.fromtimestamp(1700000000, tz=timezone.utc)

# Датум -> временски печат
ts2 = int(datetime(2024, 1, 1, tzinfo=timezone.utc).timestamp())

SQL (MySQL)

-- Тековен UNIX временски печат (s)
SELECT UNIX_TIMESTAMP();

-- Временски печат -> датум
SELECT FROM_UNIXTIME(1700000000);

-- Датум -> временски печат
SELECT UNIX_TIMESTAMP('2024-01-01 00:00:00');

Временски зони: UTC, локално време и ISO 8601

UNIX временскиот печат е секогаш во UTC – не содржи информации за временската зона или летното сметање на времето. Конверзијата во локално време зависи од поставките на прелистувачот, серверот или користената библиотека.

Поими кои е добро да се знаат:

  • UTC – глобален стандард без летно/зимско сметање на времето.
  • GMT – за обична употреба практично исто како UTC.
  • Поместување (Offset) – поместување во однос на UTC (пр. Скопје UTC+1 во зима, UTC+2 во лето).

Ограничувања на UNIX временскиот печат и проблемот 2038 година

Проблемот 2038 година (Year 2038 Problem)

На некои 32-битни системи, временскиот печат се зачувува како int32 со максимум 2 147 483 647, што одговара на 19 јануари 2038 03:14:07 UTC. По надминувањето, може да дојде до претекување и погрешно време. Модерните 64-битни системи обично го немаат овој проблем.

Опсег на 64-битно UNIX време

64-битните вредности покриваат екстремно широк период (во пракса „вечно“). Негативните вредности означуваат датум пред 1. 1. 1970.


ЧПП – Често поставувани прашања за UNIX временскиот печат

Дали UNIX временскиот печат е во UTC, или во локално време? UNIX временскиот печат е секогаш во UTC. Локалното време се добива само при конверзија според временската зона. Затоа, конверторот обично прикажува и UTC и локално време.
Како да препознаам дали временскиот печат е во секунди или милисекунди? За тековното време, временскиот печат во секунди обично има 10 цифри. Во милисекунди обично има 13 цифри и е приближно 1000 пати поголем. Ориентационо: вредност > 10¹² обично се милисекунди.
Што значи негативен UNIX временски печат? Негативниот временски печат претставува датум пред 1. 1. 1970. На пример, -1 одговара на 31. 12. 1969 23:59:59 UTC.
Како да конвертирам UNIX временски печат во SQL? Во MySQL користете FROM_UNIXTIME(timestamp) и обратно UNIX_TIMESTAMP(датум). Во PostgreSQL тоа е типично TO_TIMESTAMP(timestamp) и EXTRACT(EPOCH FROM датум).
Зошто UNIX епохата започнува на 1 јануари 1970? Тоа е историски избрана референтна точка од раните времиња на UNIX: едноставна, практична и блиска до времето на развојот на системот.