Pretvornik časa Epoch

Pretvorite časovne žige Unix v datume UTC ali pretvorite datum v sekunde epohe.

Izberite, ali želite pretvoriti časovni žig v datum ali datum v časovni žig.
Vnesite časovni žig Unix v sekundah.

Pretvorjena vrednost

2024-03-09T16:00:00.000Z

Vrednost UTC2024-03-09T16:00:00.000Z
Unix milisekunde1.710.000.000.000
Dan v tednusobota

Kako uporabljati ta pretvornik časa epoch

  1. Izberite način pretvorbe

    V polju Način pretvorbe izberite Epoch v datum ali Datum v epoch.

  2. Za epoch v datum

    V polje Časovni žig Epoch (sekunde) vnesite časovni žig Unix v sekundah.

  3. Za datum v epoch

    Izberite datum v Koledarskem datumu, nato po potrebi nastavite Uro (UTC), Minuto (UTC) in Sekundo (UTC) kot je potrebno.

  4. Preberite rezultat

    Kalkulator prikazuje vrednost UTC, milisekunde Unix in dan v tednu.

Metodologija

Kako deluje ta pretvornik časa epoch

Ta pretvornik časa epoch prevaja med časovnimi žigi Unix in človeku berljivimi datumi UTC. Čas Unix – imenovan tudi čas POSIX ali čas epoch – šteje število sekund, ki so pretekle od epohe Unix, definirane kot polnoč UTC 1. januarja 1970 (1970-01-01T00:00:00Z). Ta predstavitev z enim celim številom je de-facto standard za shranjevanje in prenos časovnih žigov v podatkovnih bazah, API-jih, dnevniških datotekah, žetonih JWT in skoraj vseh sodobnih programskih jezikih. Pretvornik deluje v obe smeri: vnos numeričnega časovnega žiga vrne ustrezen datum UTC, dan v tednu in ekvivalent v milisekundah, medtem ko vnos koledarskega datuma in časa vrne vrednost epoch v sekundah in milisekundah.

Formula
Čas Unix = sekunde, pretekle od 1970-01-01T00:00:00Z
epoch Referenčna točka: polnoč UTC 1. januarja 1970 (časovni žig Unix 0)
Unix čas (s) Skupno število celih sekund od epohe do določenega datuma in časa
Unix čas (ms) Unix čas v sekundah, pomnožen s 1.000 — uporablja se v JavaScript Date, Java System.currentTimeMillis() in številnih API-jih
UTC datum Gregorijanski koledarski datum in 24-urni čas, ki ustreza podanemu časovnemu žigu
dan v tednu Ime dneva v tednu, izpeljano iz pretvorjenega UTC datuma
Primer

Za pretvorbo časovnega žiga Unix 1.700.000.000 v datum: od 1970-01-01 00:00:00 UTC dodajte 1.700.000.000 sekund. To je enako 19.675 dnem, 17 uram, 46 minutam in 40 sekundam. Nastali datum UTC je 2023-11-14 ob 22:13:20 UTC, kar je torek. Ekvivalent v milisekundah je 1.700.000.000.000. Nasprotno pa vnos 14. novembra 2023 ob 22:13:20 UTC vrne vrednost epohe natanko 1.700.000.000.

Časovni žig 0 se pretvori v 1970-01-01 00:00:00 UTC (četrtek). Ekvivalent v milisekundah je 0.

Časovni žig 1.704.000.000 se pretvori v 2023-12-31 12:00:00 UTC (nedelja). Vnos tega datuma in časa v načinu 'Datum v epoho' vrne 1.704.000.000.

Predpostavke
  • Vsi izračuni so v UTC. Pretvorbe v lokalni čas zahtevajo uporabo ustreznega časovnega zamika po pretvorbi.
  • Prestopne sekunde se ne upoštevajo. Podobno kot POSIX ta pretvornik obravnava vsak dan kot natanko 86.400 sekund, kar ustreza vedenju večine programskih jezikov in operacijskih sistemov.
  • Negativni časovni žigi predstavljajo datume pred epoho (1. januar 1970). Na primer, −86400 ustreza 31. decembru 1969.
  • Časovne žige v milisekundah je treba pred vnosom deliti s 1.000; pretvornik sprejme sekunde kot vhod in v rezultatih prikaže ekvivalent v milisekundah.
Opombe
  • JavaScriptov Date.now() in Javov System.currentTimeMillis() vračata milisekunde, ne sekund — pred vnosom vrednosti tukaj delite s 1.000 ali za primerjavo uporabite izhod v milisekundah.
  • Težava leta 2038 vpliva na 32-bitne časovne žige s predznakom, ki bodo pretekli 19. januarja 2038 ob 03:14:07 UTC. Večina sodobnih sistemov je že prešla na 64-bitne časovne žige.
  • Pri odpravljanju napak v odzivih API ali dnevniških datotekah bodite pozorni na časovne žige, ki odstopajo za natanko 3.600 ali 7.200 sekund — to običajno pomeni, da je bil nekje v postopku uporabljen (ali izpuščen) časovni zamik.
  • Čas epohe vedno narašča monotono (brez upoštevanja prestopnih sekund), zaradi česar je idealen za razvrščanje dogodkov, izračun trajanja in ustvarjanje edinstvenih časovnih identifikatorjev.
Viri
  1. IEEE Std 1003.1 (POSIX) — definicija sekund od epohe
  2. Izvor epohe Unix — dokumentacija The Unix Heritage Society in Bell Labs
  3. RFC 3339 — Datum in čas na internetu: Časovni žigi

Kaj so časovni žigi Unix?

Časovni žig Unix je število sekund, ki so pretekle od polnoči UTC 1. januarja 1970 – epohe Unix. To celo število je de facto standard za predstavitev časa v podatkovnih bazah, API-jih, dnevniških datotekah in večini programskih jezikov. Ker je neodvisen od časovnega pasu in monotono narašča, poenostavlja razvrščanje, izračune trajanja in časovne primerjave. JavaScriptov Date.now() in številni API-ji vračajo milisekunde (1.000 × sekunde), zato pred vnosom vrednosti v milisekundah tukaj delite s 1.000. Negativni časovni žigi predstavljajo datume pred letom 1970; na primer, −86400 je natanko en dan pred epoho.

Primeri uporabe časa epohe za razvijalce

Razvijalci uporabljajo časovne žige Unix pri shranjevanju časov dogodkov v podatkovne baze, serializaciji datumov v API-jih JSON, generiranju časovnih ključev predpomnilnika in odpravljanju napak v dnevniških zapisih. Stolpci podatkovnih baz pogosto shranjujejo časovne žige kot cela števila za učinkovito indeksiranje in poizvedbe po obsegu. Odgovori API-jev pogosto vračajo sekunde ali milisekunde epohe, da se izognejo dvoumnosti časovnih pasov. Pri odpravljanju napak pretvorba surovega časovnega žiga iz dnevnika ali zahtevka JWT v človeku berljiv datum hitro razkrije, ali je vrednost pravilna ali odstopa zaradi časovnega pasu. Čas epohe se uporablja tudi za omejevanje hitrosti, potek sej in generiranje razvrstljivih edinstvenih identifikatorjev v porazdeljenih sistemih.

Pogosta vprašanja o pretvorniku časa epohe

Kaj je epoha Unix?

Epoha Unix je referenčna točka, od katere se meri čas Unix: polnoč UTC 1. januarja 1970 (1970-01-01T00:00:00Z). Časovni žig 0 ustreza temu natančnemu trenutku.

Zakaj ima moj časovni žig JavaScript več številk?

JavaScriptova funkcija Date.now() vrne milisekunde od začetka epohe, ne sekund. Delite s 1.000, da pretvorite v format na osnovi sekund, ki ga uporablja to orodje, ali pa neposredno primerjajte z izhodom v milisekundah.

Ali lahko vnesem negativen časovni žig?

Da. Negativne vrednosti predstavljajo datume pred epoho. Na primer, −86400 ustreza 1969-12-31T00:00:00Z, kar je natanko en dan pred epoho.

Ali to upošteva prestopne sekunde?

Ne, kar je v skladu s standardom POSIX. Čas POSIX predvideva, da ima vsak dan natanko 86.400 sekund. 27 prestopnih sekund, vstavljenih od leta 1972, ni posamično predstavljenih, kar pomeni, da se lahko UTC in čas Unix ob prestopnih sekundah razlikujeta do ene sekunde.

Kaj je težava leta 2038?

Sistemi, ki shranjujejo čas Unix kot 32-bitno predznačeno celo število, bodo 19. januarja 2038 ob 03:14:07 UTC doživeli prekoračitev, se spremenili v veliko negativno število in prikazali datume v letu 1901. Večina sodobnih platform zdaj uporablja 64-bitne časovne žige, ki ne bodo prekoračeni več kot 290 milijard let.

Napisal Jan Křenek Ustanovitelj in glavni razvijalec
Pregledal Pregled metodologije DigitSum Preverjanje formul in zagotavljanje kakovosti
Zadnja posodobitev 10. mar. 2026

To uporabite kot oceno in pomembne odločitve preverite pri usposobljenem strokovnjaku.

Vnosi ostanejo v brskalniku, razen če vas prihodnja funkcija izrecno ne obvesti drugače.