CodeKitHub
Vremenski alati

Pretvarač Unix vremenske oznake

Zadnje ažurirano:

Unix vremenska oznaka broji sekunde proteknule od 1. siječnja 1970., 00:00:00 UTC — vremenska oznaka 1.000.000.000, na primjer, pala je na 9. rujna 2001. Pretvori Unix vremensku oznaku u čitljiv datum, ili odaberi datum i dobij njegovu vremensku oznaku. Alat automatski prepoznaje sekunde naspram milisekundi, prikazuje lokalno vrijeme, UTC i ISO 8601, te prikazuje živi epoch sat koji otkucava pri vrhu.

Current timestamp (seconds)
Current timestamp (milliseconds)

Timestamp → Date

Date → Timestamp

Što je ovaj alat?

Unix vremenska oznaka (naziva se i epoch vrijeme) broj je sekundi proteklih od 1. siječnja 1970., 00:00:00 UTC. To je standardni način na koji računala pohranjuju trenutke u vremenu: baze podataka, log datoteke, API-ji i programski jezici svi je koriste jer je to jedan nedvosmislen broj bez zabune oko vremenskih zona.

Postoje dvije varijante: sekunde (danas 10 znamenki, npr. 1720500000) i milisekunde (13 znamenki, koje koriste JavaScript i Java). Ovaj alat automatski prepoznaje koju si zalijepio.

Zašto ga koristiti?

  • Trenutno čitaj vremenske oznake iz logova, redaka baze podataka i API odgovora.
  • Automatski prepoznaje sekunde naspram milisekundi — bez pogađanja.
  • Prikazuje lokalno vrijeme, UTC, ISO 8601 i relativno vrijeme ("prije 3 sata") zajedno.
  • Pretvara u oba smjera: vremenska oznaka → datum i datum → vremenska oznaka.
  • Živi sat trenutnog epocha za brzu referencu.

Kako ga koristiti

  1. Za dekodiranje: zalijepi vremensku oznaku (poput 1720500000) u lijevo polje i klikni "Pretvori".
  2. Pročitaj rezultat u tvojoj lokalnoj vremenskoj zoni, UTC-u, ISO 8601 i kao relativno vrijeme.
  3. Za kodiranje: odaberi datum i vrijeme u desnom polju i klikni "Pretvori" da dobiješ njegovu vremensku oznaku u sekundama i milisekundama.
  4. Koristi živi sat pri vrhu kad ti jednostavno treba trenutna vremenska oznaka.

Primjer

Ulaz

1720500000

Izlaz

Lokalno vrijeme: 9.7.2024. 13:20:00
UTC vrijeme: uto, 09 srp 2024 05:20:00 GMT
ISO 8601: 2024-07-09T05:20:00.000Z

Vrijednost od 10 znamenki tretira se kao sekunde; vrijednost od 13 znamenki kao milisekunde.

Praktični savjeti

  • Otklanjanje pogrešaka "krivo vrijeme": 90% su problemi prikaza vremenske zone, ne pogrešne vremenske oznake. Usporedi redak UTC sa svojim server logovima (serveri obično bilježe UTC) prije nego dirneš kod.
  • Datum koji točno pada na 1970-01-01 znači da je vremenska oznaka bila 0 ili nedostaje — klasičan simptom null vrijednosti, ne stvaran datum.
  • Datum oko 1970. + nekoliko dana obično znači da su sekunde negdje protumačene kao milisekunde; datum u godini 56.000+ znači obrnuto.
  • U proračunskim tablicama: Excel broji dane od 1900., ne sekunde od 1970. Pretvori s =(A1/86400)+DATE(1970,1,1) za vremensku oznaku u sekundama.

Stvarni scenariji korištenja

Gdje vremenske oznake ugrizu u praksi: čitanje polja isteka u JWT-ovima i API tokenima (exp/iat su Unix sekunde), povezivanje vremena korisnikove prijave greške s redcima log datoteke servera, postavljanje TTL-a predmemorije i cron prozora, i provjera je li certifikat ili token stvarno istekao. Redak relativnog vremena ("prije 3 sata") najbrža je provjera zdravog razuma za sve ovo.

Otklanjanje pogrešaka JWT-a dovoljno je često da ga posebno spomenemo: dekodiraj payload tokena Base64 alatom, zatim zalijepi vrijednost exp ovdje — trenutan odgovor na "je li ovaj token istekao i koliko".

Zašto je Unix vrijeme osmišljeno na ovaj način

Pohranjivanje jednog rastućeg broja od fiksnog epoha (umjesto strukture godina/mjesec/dan/sat) bio je namjeran kompromis jednostavnosti: dvije vremenske oznake mogu se usporediti ili oduzeti običnom aritmetikom, bez potrebe za kalendarskom logikom, zbog čega su baze podataka, formati logova i gotovo svaki programski jezik interno na tome izgrađeni. Cijena te jednostavnosti upravo je ono za što ovaj alat postoji da izgladi — ljudi ne razmišljaju u sekundama-od-1970., pa svaka vremenska oznaka treba prijevod natrag u kalendarski datum prije nego što ima smisla osobi koja je čita, a taj prijevod mora istovremeno uzeti u obzir vremensku zonu, preciznost (sekunde naspram milisekundi) i format prikaza.

Base64 kôder / dekôder · Kalkulator godina

Često postavljana pitanja

Kako alat zna je li moja vremenska oznaka u sekundama ili milisekundama?

Prema veličini. Vrijednosti od 1.000.000.000.000 (1e12) ili veće tretiraju se kao milisekunde; manje vrijednosti kao sekunde. Trenutni datumi iznose oko 1,7 milijardi u sekundama i oko 1.700 milijardi u milisekundama, pa se ta dva raspona ne preklapaju za realistične datume.

Zašto moja vremenska oznaka prikazuje drugačiji sat od očekivanog?

Vremenske zone. Vremenska oznaka uvijek se temelji na UTC-u; redak "lokalno vrijeme" pretvara je u vremensku zonu tvog uređaja. Usporedi redak UTC s onim što bilježi tvoj izvorni sustav — mnogi serveri bilježe u UTC-u.

Što je problem godine 2038?

Sustavi koji pohranjuju vremenske oznake kao potpisane 32-bitne cijele brojeve prelijevaju 19. siječnja 2038. Moderni sustavi koriste 64-bitne cijele brojeve i nisu pogođeni. Ovaj alat koristi JavaScript brojeve, koji obrađuju datume daleko iza 2038.

Mogu li pretvoriti negativne vremenske oznake?

Da. Negativne vremenske oznake predstavljaju datume prije 1. siječnja 1970. — na primjer, -86400 je 31. prosinca 1969.

Uključuje li epoch prijestupne sekunde?

Ne. Unix vrijeme se pretvara kao da svaki dan ima točno 86.400 sekundi i ignorira prijestupne sekunde — namjerno pojednostavljenje koje aritmetiku čini jednostavnom.

Povezani alati