UNIX Timestamp Konverter (Online Pretvarač Vremena)

Trenutna UNIX vremenska oznaka

Sekunde
Milisekunde

Vremenska oznaka → Datum i vrijeme


Datum i vrijeme → Vremenska oznaka

UNIX Pretvarač Vremenskih Oznaka (Online Pretvarač UNIX Vremena)

Ovaj UNIX pretvarač vremenskih oznaka omogućuje vam brzu konverziju UNIX vremena (epoch time / POSIX time) u datum i vrijeme i obrnuto. Podržava vremenske oznake u sekundama i milisekundama, prikazuje lokalno vrijeme, UTC i ISO 8601, a rezultati se mogu kopirati jednim klikom.


Što je UNIX vremenska oznaka (epoch time / POSIX time)?

UNIX vremenska oznaka je broj koji izražava vrijeme kao broj sekundi od 1. siječnja 1970. 00:00:00 UTC (tzv. UNIX epoha). U praksi je to jedan od najčešće korištenih formata za pohranu i prijenos datuma i vremena u sustavima, bazama podataka, API-jima i zapisnicima (logovima).

Primjer: 1700000000 odgovara datumu 14. studenog 2023. 22:13:20 UTC.

Zašto baš 1. 1. 1970.?

Početak epohe (1970-01-01) odabran je prilikom dizajniranja UNIX-a kao praktična referentna točka: blizu je razdoblja nastanka sustava i omogućuje jednostavne izračune vremena.


UNIX vremenska oznaka u sekundama vs. milisekundama

UNIX vremenska oznaka se najčešće pojavljuje u dva oblika:

Format vremenske oznakePrimjerTipična upotreba
Sekunde (s)1700000000baze podataka, pozadina, API, datoteke
Milisekunde (ms)1700000000000JavaScript (Date.now()), analitika, detaljni zapisi

Kako prepoznati što imate?

  • Sekunde obično imaju 10 znamenki za „današnje“ datume.
  • Milisekunde obično imaju 13 znamenki i otprilike su 1000 puta veće.
  • Orijentacijski: ako je vrijednost > 10¹², gotovo sigurno se radi o milisekundama.

Kako koristiti UNIX pretvarač vremenskih oznaka

1) Vremenska oznaka → Datum i vrijeme

  1. Unesite UNIX vremensku oznaku u polje ili kliknite na Sada (trenutno UNIX vrijeme).
  2. Ako je vremenska oznaka u milisekundama, aktivirajte opciju Milisekunde.
  3. Kliknite na Pretvori (ili pritisnite Enter).
  4. Prikazat će se konverzija u lokalno vrijeme, UTC i ISO 8601.
  5. Klikom na rezultat kopirat ćete ga u međuspremnik.

2) Datum i vrijeme → Vremenska oznaka

  1. Odaberite datum i vrijeme u obrascu.
  2. Kliknite na Pretvori.
  3. Rezultat ćete dobiti kao vremensku oznaku u sekundama i milisekundama.

Gdje se UNIX vremenska oznaka najčešće koristi?

UNIX vrijeme susrest ćete praktično svugdje gdje se radi s vremenom u IT-u:

  • Baze podataka – pohrana vremena i usporedba u MySQL, PostgreSQL, SQLite itd.
  • API – REST/GraphQL često vraća vrijeme kao vremensku oznaku (jednostavna serijalizacija).
  • Zapisi (Logovi) i praćenje – precizno sortiranje događaja po vremenu.
  • Git – commitovi sadrže vremenske podatke.
  • Datotečni sustavi – vremena kao mtime/ctime/atime (posljednja izmjena itd.).
  • JWT – claimovi iat (issued at) i exp (expires) su tipično u epoch sekundama.
  • Linux/Unix shelldate +%s vraća trenutnu vremensku oznaku.
  • JavaScriptDate.now() vraća vrijeme u milisekundama.

Praktični primjeri pretvorbe UNIX vremena

JavaScript (vremenska oznaka ↔ datum)

// Trenutna UNIX vremenska oznaka u sekundama
const tsSeconds = Math.floor(Date.now() / 1000);

// Trenutna vremenska oznaka u milisekundama
const tsMs = Date.now();

// Vremenska oznaka (s) -> datum
const dateFromSeconds = new Date(1700000000 * 1000);
console.log(dateFromSeconds.toISOString());

// Datum -> vremenska oznaka (s)
const ts = Math.floor(new Date("2024-01-01T00:00:00Z").getTime() / 1000);
console.log(ts);

Python (vremenska oznaka ↔ datetime)

import time
from datetime import datetime, timezone

# Trenutna vremenska oznaka u sekundama
ts = int(time.time())

# Vremenska oznaka -> datetime (UTC)
dt_utc = datetime.fromtimestamp(1700000000, tz=timezone.utc)

# Datum -> vremenska oznaka
ts2 = int(datetime(2024, 1, 1, tzinfo=timezone.utc).timestamp())

SQL (MySQL)

-- Trenutna UNIX vremenska oznaka (s)
SELECT UNIX_TIMESTAMP();

-- Vremenska oznaka -> datum
SELECT FROM_UNIXTIME(1700000000);

-- Datum -> vremenska oznaka
SELECT UNIX_TIMESTAMP('2024-01-01 00:00:00');

Vremenske zone: UTC, lokalno vrijeme i ISO 8601

UNIX vremenska oznaka je uvijek u UTC – ne sadrži informaciju o vremenskoj zoni niti o ljetnom vremenu. Konverzija u lokalno vrijeme ovisi o postavkama preglednika, poslužitelja ili korištene biblioteke.

Pojmovi koje je korisno znati:

  • UTC – globalni standard bez ljetnog/zimskog računanja vremena.
  • GMT – za uobičajenu upotrebu praktički identičan UTC-u.
  • Offset – pomak u odnosu na UTC (npr. Zagreb UTC+1 zimi, UTC+2 ljeti).

Ograničenja UNIX vremenske oznake i problem 2038. godine

Problem 2038. godine (Year 2038 Problem)

Na nekim 32-bitnim sustavima vremenska oznaka se pohranjuje kao int32 s maksimumom od 2 147 483 647, što odgovara 19. siječnju 2038. 03:14:07 UTC. Nakon prekoračenja, može doći do prelijevanja (overflow) i pogrešnog vremena. Moderni 64-bitni sustavi obično nemaju ovaj problem.

Raspon 64-bitnog UNIX vremena

64-bitne vrijednosti pokrivaju iznimno široko razdoblje (u praksi „zauvijek“). Negativne vrijednosti označavaju datum prije 1. 1. 1970.


ČPP – Često postavljana pitanja o UNIX vremenskoj oznaci

Je li UNIX vremenska oznaka u UTC-u ili lokalnom vremenu? UNIX vremenska oznaka je uvijek u UTC-u. Lokalno vrijeme nastaje tek prilikom konverzije prema vremenskoj zoni. Stoga pretvarač obično prikazuje i UTC i lokalno vrijeme.
Kako prepoznati je li vremenska oznaka u sekundama ili milisekundama? Za trenutno vrijeme, vremenska oznaka u sekundama tipično ima 10 znamenki. U milisekundama obično ima 13 znamenki i otprilike je 1000 puta veća. Orijentacijski: vrijednost > 10¹² obično su milisekunde.
Što znači negativna UNIX vremenska oznaka? Negativna vremenska oznaka predstavlja datum prije 1. 1. 1970. Na primjer, -1 odgovara 31. 12. 1969. 23:59:59 UTC.
Kako pretvoriti UNIX vremensku oznaku u SQL-u? U MySQL-u ćete koristiti FROM_UNIXTIME(timestamp) i obrnuto UNIX_TIMESTAMP(datum). U PostgreSQL-u je to tipično TO_TIMESTAMP(timestamp) i EXTRACT(EPOCH FROM datum).
Zašto UNIX epoha počinje 1. siječnja 1970.? To je povijesno odabrana referentna točka iz ranih dana UNIX-a: jednostavna, praktična i bliska vremenu razvoja sustava.