Generátor časových razítek

Generování časových razítek Unixu nebo převod mezi časovým razítkem a lidsky čitelným formátem data. Nezbytné pro vývojáře pracující s rozhraními API, databázemi nebo systémy protokolování, které používají čas systému Unix. Rychle převádějte časové značky na čitelná data nebo generujte aktuální časové značky pro testování a vývoj.

Často kladené otázky

Časové razítko Unixu je počet sekund, které uplynuly od 1. ledna 1970 00:00:00 UTC (epocha Unixu). Například 1609459200 představuje 1. ledna 2021 00:00:00 UTC. Jedná se o univerzální způsob reprezentace času jako jediného čísla, který usnadňuje ukládání, porovnávání a provádění výpočtů s daty v různých časových pásmech a systémech.

Zadejte do našeho převodníku časové razítko Unixu (počet sekund od roku 1970) a my vám zobrazíme odpovídající datum a čas v lidsky čitelném formátu. Datum můžete zobrazit v místním časovém pásmu i v UTC. Většina časových razítek má 10 číslic pro sekundy, ale některé systémy používají 13 číslic pro milisekundy (pro získání sekund vydělte 1000).

Časové značky Unixu se tradičně měří v sekundách (10 číslic, např. 1609459200). JavaScript a některé další systémy však používají milisekundy (13 číslic, např. 1609459200000). Chcete-li převést milisekundy na sekundy, vydělte je číslem 1000. Chcete-li převést sekundy na milisekundy, vynásobte je číslem 1000. Náš nástroj zpracovává oba formáty automaticky.

Pomocí našeho generátoru okamžitě získáte aktuální časové razítko systému Unix. V jazyce JavaScript můžete použít Date.now() pro milisekundy nebo Math.floor(Date.now() / 1000) pro sekundy. V jazyce Python použijte time.time(). V PHP použijte time(). Mít k dispozici aktuální časové razítko je užitečné pro protokolování, vytváření jedinečných identifikátorů nebo testování funkcí založených na čase.

Časové značky Unixu jsou z definice vždy v UTC (koordinovaný světový čas). Při převodu na lidsky čitelné datum závisí zobrazení na časovém pásmu. Například časové razítko 1609459200 je 1. ledna 2021 00:00:00 UTC, ale v New Yorku (EST, UTC-5) by se zobrazilo jako 31. prosince 2020 19:00:00. Při práci s časovými razítky vždy berte v úvahu časová pásma.

Protože časové značky jsou jen čísla, můžete použít jednoduchou aritmetiku. Chcete-li zjistit čas mezi dvěma událostmi, odečtěte jednu časovou značku od druhé (výsledek je v sekundách). Chcete-li k časovému razítku přidat čas, přičtěte počet sekund (např. +86400 přidá jeden den, +3600 přidá jednu hodinu). Díky tomu jsou časová razítka ideální pro výpočty data, aniž byste se museli starat o měsíce, přestupné roky nebo časová pásma.

Epocha Unixu (1. ledna 1970 00:00:00 UTC) byla zvolena jako nulový bod při vývoji Unixu na počátku 70. let. Toto datum bylo dostatečně čerstvé, aby bylo relevantní, a dostatečně vzdálené, aby pokrylo většinu počítačových potřeb. Záporné časové značky představují data před rokem 1970, i když se používají jen zřídka.

JavaScript používá Date.now() nebo new Date().getTime() (milisekundy), Python používá time.time() (sekundy), PHP používá time() (sekundy), Java používá System.currentTimeMillis() (milisekundy). Při výměně časových značek mezi systémy vždy ověřte, zda pracujete se sekundami nebo milisekundami, abyste se vyhnuli chybám.

Časové značky systému Unix jsou vždy v UTC a nemají vliv na letní čas. Letní čas má vliv pouze na převod časového razítka na zobrazení místního času. Proto jsou časové značky ideální pro ukládání časových údajů - jsou imunní vůči komplikacím s časovými pásmy a letním časem.

Standardní 32bitové časové značky Unixu se potýkají s problémem roku 2038 (maximální hodnota 2 147 483 647 sekund = 19. ledna 2038). Moderní systémy používají 64bitové časové značky, které rozšiřují rozsah o miliardy let do budoucnosti a minulosti. Náš nástroj podporuje oba formáty a zvládá data daleko za rokem 2038.