Epoch laika konvertētājs

Konvertējiet Unix laika zīmogus par UTC datumiem vai pārvērtiet datumu epoch sekundēs.

Izvēlieties, vai konvertēt laika zīmogu par datumu vai datumu par laika zīmogu.
Ievadiet Unix laika zīmogu sekundēs.

Konvertētā vērtība

2024-03-09T16:00:00.000Z

UTC vērtība2024-03-09T16:00:00.000Z
Unix milisekundes1 710 000 000 000
Nedēļas dienaSestdiena

Kā lietot šo epoch laika pārveidotāju

  1. Izvēlieties konvertēšanas režīmu

    Laukā Konvertēšanas režīms izvēlieties Epoch uz datumu vai Datums uz epoch.

  2. Konvertēšanai no epoch uz datumu

    Ievadiet Unix laika zīmogu sekundēs laukā Epoch laika zīmogs (sekundes).

  3. Konvertēšanai no datuma uz epoch

    Izvēlieties datumu kalendārā, pēc tam iestatiet Hour (UTC), Minute (UTC) un Second (UTC) pēc nepieciešamības.

  4. Skatīt rezultātu

    Kalkulators parāda UTC vērtību, Unix milisekundes un nedēļas dienu.

Metodoloģija

Kā darbojas šis epoch laika konvertētājs

Šis epoch laika konvertētājs tulko Unix laika zīmogus cilvēkam lasāmos UTC datumos un otrādi. Unix laiks — saukts arī par POSIX laiku vai epoch laiku — skaita sekundes, kas pagājušas kopš Unix epoch sākuma, kas definēts kā 1970. gada 1. janvāra pusnakts UTC (1970-01-01T00:00:00Z). Šis viena vesela skaitļa attēlojums ir de-facto standarts laika zīmogu glabāšanai un pārsūtīšanai datubāzēs, API, žurnālfailos, JWT žetonos un gandrīz visās mūsdienu programmēšanas valodās. Konvertētājs darbojas abos virzienos: ievadot skaitlisku laika zīmogu, tiek atgriezts atbilstošais UTC datums, nedēļas diena un milisekunžu ekvivalents, savukārt, ievadot kalendāro datumu un laiku, tiek atgriezta epoch vērtība sekundēs un milisekundēs.

Formula
Unix laiks = sekundes, kas pagājušas kopš 1970-01-01T00:00:00Z
epoha Atsauces punkts: 1970. gada 1. janvāra pusnakts UTC (Unix laika zīmogs 0)
Unix laiks (s) Kopējais pilno sekunžu skaits no laikmeta sākuma līdz norādītajam datumam un laikam
Unix laiks (ms) Unix laiks sekundēs, reizināts ar 1000 — izmanto JavaScript Date, Java System.currentTimeMillis() un daudzas API
UTC datums Gregora kalendāra datums un 24 stundu laiks, kas atbilst norādītajam laika zīmogam
nedēļas diena Nedēļas dienas nosaukums, kas iegūts no konvertētā UTC datuma
Piemērs

Lai konvertētu Unix laika zīmogu 1 700 000 000 par datumu: sākot no 1970-01-01 00:00:00 UTC, pieskaitiet 1 700 000 000 sekundes. Tas ir vienāds ar 19 675 dienām, 17 stundām, 46 minūtēm un 40 sekundēm. Iegūtais UTC datums ir 2023-11-14 plkst. 22:13:20 UTC, kas ir otrdiena. Milisekunžu ekvivalents ir 1 700 000 000 000. Un otrādi, ievadot 2023. gada 14. novembri plkst. 22:13:20 UTC, tiek iegūta laikmeta vērtība tieši 1 700 000 000.

Laika zīmogs 0 tiek konvertēts uz 1970-01-01 00:00:00 UTC (ceturtdiena). Milisekunžu ekvivalents ir 0.

Laika zīmogs 1 704 000 000 tiek konvertēts uz 2023-12-31 12:00:00 UTC (svētdiena). Ievadot šo datumu un laiku režīmā 'Datums uz Unix laiku', tiek atgriezts 1 704 000 000.

Pieņēmumi
  • Visi aprēķini tiek veikti UTC. Vietējā laika konvertēšanai pēc aprēķina jāpiemēro atbilstošā laika joslas nobīde.
  • Papildsekundes netiek skaitītas. Līdzīgi kā POSIX, šis konvertētājs katru dienu uzskata par tieši 86 400 sekundēm, kas atbilst vairuma programmēšanas valodu un operētājsistēmu darbībai.
  • Negatīvi laika zīmogi apzīmē datumus pirms laikmeta sākuma (1970. gada 1. janvāra). Piemēram, −86400 atbilst 1969. gada 31. decembrim.
  • Milisekunžu laika zīmogi pirms ievadīšanas jādala ar 1000; konvertētājs kā ievadi pieņem sekundes un rezultātos parāda milisekunžu ekvivalentu.
Piezīmes
  • JavaScript Date.now() un Java System.currentTimeMillis() atgriež milisekundes, nevis sekundes — pirms vērtības ievadīšanas šeit izdaliet to ar 1 000 vai izmantojiet milisekunžu izvadi salīdzināšanai.
  • 2038. gada problēma skar 32 bitu parakstīta vesela skaitļa laika zīmogus, kas pārpildīsies 2038. gada 19. janvārī plkst. 03:14:07 UTC. Lielākā daļa mūsdienu sistēmu ir pārgājušas uz 64 bitu laika zīmogiem.
  • Atkļūdojot API atbildes vai žurnālfailus, pievērsiet uzmanību laika zīmogiem, kas šķiet nobīdīti par tieši 3 600 vai 7 200 sekundēm — tas parasti norāda, ka kaut kur procesā ir piemērota (vai izlaista) laika joslas nobīde.
  • Laikmeta laiks (epoch time) vienmēr monotoni pieaug (neņemot vērā garo sekunžu korekcijas), kas padara to ideāli piemērotu notikumu kārtošanai, ilguma aprēķināšanai un unikālu uz laiku balstītu identifikatoru ģenerēšanai.
Avoti
  1. IEEE Std 1003.1 (POSIX) — sekunžu definīcija kopš laikmeta sākuma
  2. Unix laikmeta izcelsme — The Unix Heritage Society un Bell Labs dokumentācija
  3. RFC 3339 — Datums un laiks internetā: laika zīmogi

Kas ir Unix laika zīmogi?

Unix laika zīmogs ir sekunžu skaits, kas pagājis kopš 1970. gada 1. janvāra pusnakts UTC — Unix laikmeta sākuma. Šis veselais skaitlis ir de-facto standarts laika attēlošanai datubāzēs, API, žurnālfailos un lielākajā daļā programmēšanas valodu. Tā kā tas nav atkarīgs no laika joslas un ir monotoni pieaugošs, tas vienkāršo kārtošanu, ilguma aprēķinus un uz laiku balstītus salīdzinājumus. JavaScript Date.now() un daudzi API atgriež milisekundes (1000 × sekundes), tāpēc pirms milisekunžu vērtības ievadīšanas šeit izdaliet to ar 1000. Negatīvi laika zīmogi apzīmē datumus pirms 1970. gada; piemēram, −86400 ir tieši viena diena pirms laikmeta sākuma.

Izstrādātāju lietošanas gadījumi Unix laikam

Izstrādātāji izmanto Unix laika zīmogus, saglabājot notikumu laikus datubāzēs, serializējot datumus JSON API, ģenerējot uz laiku balstītas kešatmiņas atslēgas un atkļūdojot žurnālierakstus. Datubāzu kolonnās laika zīmogi bieži tiek glabāti kā veseli skaitļi efektīvai indeksēšanai un diapazona vaicājumiem. API atbildes bieži atgriež sekundes vai milisekundes, lai izvairītos no laika joslu neskaidrības. Atkļūdošanas laikā, konvertējot neapstrādātu laika zīmogu no žurnāla vai JWT prasības uz cilvēkam lasāmu datumu, ātri atklājas, vai vērtība ir pareiza vai nobīdīta laika joslas faktora dēļ. Unix laiks tiek izmantots arī ātruma ierobežošanai, sesiju derīguma termiņiem un kārtojamu unikālu identifikatoru ģenerēšanai izkliedētās sistēmās.

Biežāk uzdotie jautājumi par laikmeta laika konvertētāju

Kas ir Unix laikmets?

Unix laikmets ir atskaites punkts, no kura mēra Unix laiku: 1970. gada 1. janvāra pusnakts UTC (1970-01-01T00:00:00Z). Laika zīmogs 0 atbilst tieši šim brīdim.

Kāpēc manam JavaScript laika zīmogam ir vairāk ciparu?

JavaScript funkcija Date.now() atgriež milisekundes kopš laikmeta sākuma (epoch), nevis sekundes. Daliet ar 1000, lai konvertētu uz šajā rīkā izmantoto sekunžu formātu, vai salīdziniet tieši ar milisekunžu izvadi.

Vai es varu ievadīt negatīvu laika zīmogu?

Jā. Negatīvas vērtības apzīmē datumus pirms laikmeta sākuma. Piemēram, −86400 atbilst 1969-12-31T00:00:00Z, tieši vienu dienu pirms laikmeta sākuma.

Vai šis rīks ņem vērā garās sekundes?

Nē, un tas atbilst POSIX standartam. POSIX laiks pieņem, ka katra diena ir tieši 86 400 sekundes gara. 27 garās sekundes, kas ieviestas kopš 1972. gada, netiek atsevišķi attēlotas, kas nozīmē, ka UTC un Unix laiks var atšķirties līdz pat vienai sekundei garo sekunžu robežās.

Kas ir 2038. gada problēma?

Sistēmas, kas glabā Unix laiku kā 32 bitu zīmīgu veselu skaitli, pārpildīsies 2038. gada 19. janvārī plkst. 03:14:07 UTC, pārvēršoties par lielu negatīvu skaitli un uzrādot datumus 1901. gadā. Lielākā daļa mūsdienu platformu tagad izmanto 64 bitu laika zīmogus, kas nepārpildīsies vairāk nekā 290 miljardus gadu.

Autors Jan Křenek Dibinātājs un galvenais izstrādātājs
Pārskatījis DigitSum metodoloģijas pārskats Formulu pārbaude un kvalitātes kontrole
Pēdējo reizi atjaunināts 2026. g. 10. marts

Izmantojiet šo kā aprēķinu un saskaņojiet svarīgus lēmumus ar kvalificētu speciālistu.

Ievadītie dati paliek pārlūkprogrammā, ja vien kāda nākotnes funkcija skaidri nenorādīs citādi.