Unix timestamp pretvarač
Pretvori Unix timestamp u sekundama ili milisekundama u čitljiv datum u lokalnom vremenu, UTC-u i ISO 8601 formatu, a svaki datum nazad u epoch vrijeme.
Timestamp → datum
- Lokalno vrijeme
- –
- UTC
- –
- ISO 8601
- –
Datum → timestamp
- Sekunde
- –
- Milisekunde
- –
Kako koristiti Unix timestamp pretvarač
- Za pretvaranje timestampa u datum zalijepi epoch vrijednost poput
1700000000ili1700000000000. Alat prema veličini broja prepoznaje je li u sekundama ili milisekundama. - Pročitaj rezultat u svojoj lokalnoj vremenskoj zoni, u UTC-u i u formatu ISO 8601.
- Za obrnuti smjer unesi datum i vrijeme; alat vraća odgovarajuću epoch vrijednost u sekundama i milisekundama.
- Pogledaj trenutni timestamp na vrhu, koji se osvježava uživo, kad god ti treba „sada“ kao epoch vrijednost.
Šta je Unix timestamp?
Unix timestamp, poznat i kao epoch vrijeme ili POSIX vrijeme, je broj sekundi koje su protekle od Unix epohe: 1. januara 1970. u 00:00:00 UTC. Na primjer, 1700000000 odgovara 14. novembru 2023. u 22:13:20 UTC. Datumi prije 1970. predstavljeni su negativnim brojevima.
Timestampovi su popularni među programerima jer su jedan broj koji ne zavisi od vremenskih zona, ljetnog računanja vremena ni formata datuma. Poređenje dva trenutka je jednostavno oduzimanje, a sortiranje po vremenu jednostavno numeričko sortiranje. Nalaze se u bazama podataka, log datotekama, odgovorima API-ja, JWT zahtjevima poput exp i iat, metapodacima datoteka i planerima poput cron-a.
Imaj na umu da Unix vrijeme ignoriše prijestupne sekunde: svaki dan se računa kao tačno 86 400 sekundi. To pojednostavljuje računanje i zato timestamp nije stroga računica svake fizičke sekunde od 1970.
Sekunde naspram milisekundi
Najčešći izvor zabune je jedinica. Tradicionalni Unix sistemi, PHP, Pythonov time.time() i većina baza podataka koriste sekunde, što danas daje 10-cifren broj. JavaScriptov Date.now(), Javin System.currentTimeMillis() i mnogi JSON API-ji koriste milisekunde, što daje 13-cifren broj. Ako milisekunde protumačiš kao sekunde, završiš desetinama hiljada godina u budućnosti; ako sekunde protumačiš kao milisekunde, završiš u januaru 1970. Ovaj alat gleda veličinu broja da automatski odabere pravu jedinicu, a pri pretvaranju datuma prikazuje obje vrijednosti da možeš kopirati onu koju tvoj sistem očekuje.
Lokalno vrijeme, UTC i ISO 8601
Timestamp određuje jedan tačan trenutak, ali se taj trenutak prikazuje različito zavisno od vremenske zone. Lokalni rezultat koristi vremensku zonu podešenu na tvom uređaju, dok je UTC univerzalna referenca koju koriste serveri i logovi. ISO 8601, na primjer 2023-11-14T22:13:20.000Z, je nedvosmislen tekstualni format preporučen za razmjenu datuma između sistema; završno Z znači UTC.
Problem godine 2038.
Mnogi stariji sistemi pohranjuju Unix vrijeme kao 32-bitni cijeli broj s predznakom, čija je najveća vrijednost 2 147 483 647. Ta granica se dostiže 19. januara 2038. u 03:14:07 UTC. Sekundu kasnije takav brojač se prelijeva u veliki negativan broj i čita se kao datum u decembru 1901. Moderni operativni sistemi, baze podataka i jezici uglavnom su prešli na 64-bitne vrijednosti vremena, koje granicu pomjeraju milijardama godina u budućnost, ali ugrađeni uređaji, naslijeđeni formati datoteka i stare kolone baza podataka mogu još biti pogođeni. Sam JavaScript nije pogođen jer pohranjuje vrijeme kao milisekunde u 64-bitnom broju s pomičnim zarezom.
Privatnost
Sva pretvaranja odvijaju se u tvom pregledniku pomoću njegovih ugrađenih funkcija za datume. Nijedan timestamp ni datum ne šalje se na server.
Česta pitanja
Kako da znam je li moj timestamp u sekundama ili milisekundama?
Prebroji cifre. Današnji datum ima 10 cifara u sekundama i 13 cifara u milisekundama. Alat automatski primjenjuje istu logiku, na osnovu veličine broja.
Zašto se lokalno vrijeme razlikuje od UTC-a?
Oba opisuju isti trenutak. Lokalno vrijeme primjenjuje pomak vremenske zone tvog uređaja i pravila ljetnog računanja vremena, dok UTC nema pomaka. Ako vrijeme dijeliš s ljudima negdje drugdje, UTC ili ISO 8601 izbjegavaju nesporazume.
Može li Unix timestamp biti negativan?
Može. Negativne vrijednosti predstavljaju trenutke prije 1. januara 1970. u UTC-u. Na primjer, -86400 je 31. decembar 1969. u 00:00:00 UTC.
Sadrži li Unix timestamp vremensku zonu?
Ne. Timestamp je uvijek relativan u odnosu na UTC i ne nosi informaciju o vremenskoj zoni. Zona je bitna tek kada ga prikažeš kao kalendarski datum i vrijeme.
Hoće li se moji sistemi pokvariti 2038. godine?
Samo ako pohranjuju vrijeme u 32-bitnom cijelom broju s predznakom. Provjeri starije baze podataka, ugrađeni firmver i binarne formate datoteka. Sve što koristi 64-bitno vrijeme sigurno je u doglednoj budućnosti.
Srodni alati
- UUID generator Besplatan UUID generator za verzije 4 i 7. Napravi do 1 000 UUID-ova odjednom, velikim slovima ili bez crtica, pa ih kopiraj ili preuzmi kao .txt.
- JSON formater i validator Besplatan JSON formater i validator koji uljepšava, minifikuje i provjerava JSON u pregledniku, a sintaksne greške prijavljuje s redom i kolonom.