Főbb pontok
- 01Az Unix timestamp az 1970. január 1-én 00:00:00 UTC óta eltelt másodperceket számolja, ezt hívják epochnak.
- 02A 10 jegyű szám általában másodperceket jelent, a 13 jegyű szám általában ezredmásodperceket — konvertáláshoz ossza el 1000-zel.
- 03Az Unix idő mindig UTC-ben számított, így az ugyanaz az időbélyeg különböző időzónákban más óraidőt mutat.
A definíció egy mondatban
Az Unix timestamp az 1970. január 1-én 00:00:00 Koordinált Világidő (UTC) óta eltelt másodpercek száma. Ezt a kiindulási pillanatot Unix epochnak nevezzük, és minden timestamp ettől számítva mérhető. Ahogy olvasod ezt, az aktuális érték körülbelül 1,7 milliárd fölött van.
Az oka annak, hogy a számítógépek egyetlen tetszőleges dátumra állapodtak meg, a hatékonyság. Az egyetlen egész szám sokkal könnyebb tárolni, összehasonlítani, és matematikai műveletet végezni rajta, mint egy olyan karakterláncot, mint "2026. június 24., 15:14 közép-európai nyári idő". Az események sorrendezése, az eltelt idő mérése, vagy annak ellenőrzése, hogy az egyik dolog az másik előtt történt-e, mindez két egész szám összehasonlítására redukálódik.
Mivel a számlálás az UTC-hez rögzített, az Unix timestamp nem tartalmaz időzónát. Ugyanaz a szám, az 1750000000, a Föld minden pontján ugyanaz a pillanat — csak Tokióban más óraidőt mutat, mint New York-ban. Az időzónákat csak akkor alkalmazzák, amikor a szám vissza lesz alakítva emberi-olvasható dátumra.
Másodpercek vs. ezredmásodpercek: hogyan lehet őket megkülönböztetni
A klasszikus Unix timestamp másodpercekben mérendő, de sok modern szoftver — különösen a JavaScript — ezredmásodpercekben méri, amely 1000-szer nagyobb. A kettő keveredése a leggyakoribb timestamp hiba, és olyan dátumokat eredményez, amelyek vagy 1970-ben vagy nagyjából 50 000 év múltán vannak.
A leggyorsabb módja a megkülönböztetésnek a számjegyek száma. Az aktuális dátumra vonatkozó másodpercben kifejezett timestamp 10 jegyből áll (1750000000). Ugyanez a pillanat ezredmásodpercben 13 jegyből áll (1750000000000). Ha egy érték 1000-szeresnek tűnik túl nagy, akkor szinte biztosan ezredmásodpercek — ossza el 1000-zel a másodpercek получить. Ha egy könyvtár ezredmásodperceket vár, és Ön másodperceket ad neki, szorozza meg 1000-zel.
Néhány rendszer még finomabb: a mikroszekundumok (16 számjegy) és nanoszekundumok (19 számjegy) magas felbontású naplózásban és adatbázisokban jelennek meg. A szabály ugyanaz — minden lépés 1000-szeresítés. Kétség esetén illessze be a számot egy konverterbe, és nézze meg, hogy az eredményül kapott dátum közel van-e a mai naphoz.
Unix timestamp dátumra konvertálása
Nem kell kézzel végzenie a számítást. Illessze be a számot, és olvassa el a dátumot a saját időzónájában és az UTC-ben.
- 01
Nyissa meg az Unix timestamp konvertert
Lépjen a Handytool Unix timestamp konverteréhez. Minden a böngészőben fut, így semmi sem kerül a szerverre.
- 02
Illessze be a számot
Adja meg az időbélyeget. Az eszköz automatikusan felismeri, hogy másodpercekben vagy ezredmásodpercekben van-e, a hossza alapján, így ritkán kell megadnia.
- 03
Olvassa el a dátumot
Lássa a dátumot és az időt az UTC és a helyi időzóna szerint is, hogy megbizonyosodhassanak az elvárt pillanatban.
- 04
Fordított irányban
Adjon meg egy naptári dátumot és időt, hogy megkapja a megfelelő Unix timestampet az adatbázisban tároláshoz, egy API-híváshoz, vagy egy ütemezett feladathoz.
Miért 1970, és más furcsaságok
Az epochot az 1970-es évek elején a Bell Labs-nál Unix-t építő mérnökök választották. Egy közelmúlt, kerek, kényelmes dátumnak kellett lennie, és az 1970 kezdete megfelelt — elég közeli volt ahhoz, hogy a számlálónak ne kelljen azonnal nagy számokra van szükség, és elég messze ahhoz, hogy lefedezze az általuk érdekelt fájl- és folyamatidőket. A negatív időbélyegek az 1970 előtti pillanatokat jelölik, így a rendszer a történelmi dátumokat is kezeli.
Egy finomság: az Unix idő figyelmen kívül hagyja az ugrás-másodperceket. A valódi UTC időnként egy extra másodpercet beszúr, hogy igazodjon a Föld enyhén szabálytalan forgásához, de az Unix idő úgy tesz, mintha minden napnak pontosan 86 400 másodperce lenne. Ez az aritmetikát egyszerű tartja, azzal a költséggel, hogy kissé kilométerenként marad az szigorúan csillagászati időtől — egy tradeoff, amellyel szinte mindenki boldog.
Ha egy időbélyeget egy Discord-eseménnyel, egy cron-ütemezéssel, vagy egy visszaszámlálással kell összehangolni, segít a konvertert egy időzóna-eszközzel párosítani, hogy ugyanaz a pillanat megtekinthető legyen a közönség által lakott régiókban.
Unix timestamp FAQ
Az Unix timestamp másodpercekben vagy ezredmásodpercekben van-e?
Ez a rendszertől függ. A hagyományos Unix idő másodpercekben van (az aktuális dátumok 10 jegyű száma); a JavaScript és számos webes API ezredmásodperceket használ (13 számjegy). Ossza el 1000-zel az ezredmásodpercekről másodpercekre konvertáláshoz, vagy szorozza meg 1000-zel az ellenkező irányban.
Tartalmaz-e az Unix timestamp időzónát?
Nem. Az Unix idő mindig az UTC-ben van számolva, és nem tartalmaz zónát. Az zóna csak akkor kerül alkalmazásra, amikor a számot olvasható dátumra konvertálja, ezért az ugyanaz az időbélyeg a világ különböző helyein más óraidőt mutat.
Mi az aktuális Unix timestamp?
Minden másodpercben változik. 2026 közepén nagyjából 1,75 milliárd. Nyissa meg a konvertert az élő érték megtekintéséhez, és bármilyen konkrét dátumot az időbélyegévé konvertálásához.
Mi az epoch idő?
Az "epoch idő" az Unix idő másik neve. Az epoch a rögzített kezdet — 1970. január 1. 00:00:00 UTC — és az epoch idő a tőle számított másodpercek száma.
Lehet-e negatív az Unix timestamp?
Igen. Az 1970. január 1. előtti dátumok negatív számokként vannak ábrázolva, az epoch-tól visszafele számítva másodpercekben.