Datum na Unix timestamp – převodník data a času na časové razítko

Poslední revize obsahu:

Zadej datum s časem a přečti si Unix timestamp v sekundách. Půlnoc UTC 1. ledna 2025 odpovídá razítku 1735689600. Pod výsledkem se objeví stejný okamžik v milisekundách a při volbě Místní čas se zadaný čas počítá v časovém pásmu tvého zařízení, včetně letního času.

UTC

Zadej datum ve tvaru 2023-11-14 22:13:20 nebo 14.11.2023 22:13. Přijímá se i zápis ISO 8601 s pásmem, například 2023-11-14T22:13:20Z.

s
Časové pásmo

Při UTC se zadaný čas počítá bez posunu. Při místním čase se počítá v časovém pásmu tvého zařízení. Datum s vlastním pásmem, například +02:00, se počítá v tomto pásmu.

na

Co je Unix timestamp a od kdy se počítá?

Unix timestamp je unixový čas zapsaný jedním číslem: počtem sekund od 00:00:00 UTC 1. ledna 1970[1]. Půlnoc 1. ledna 1970 má razítko 0 a s každou další sekundou razítko vzroste o jedna.

Norma POSIX, společný standard unixových systémů, uvádí vzorec, podle kterého se razítko pro datum počítá. Vzorec sčítá sekundy, minuty vynásobené 60, hodiny vynásobené 3600 a dny vynásobené 86 400, s opravou pro přestupné roky[2]. Každý den má v tomto výpočtu přesně 86 400 sekund.

Datum zapsané pro lidi vždy předpokládá nějaké časové pásmo, samotné razítko ale informaci o pásmu neobsahuje[3]. Proto 10:00 na hodinách v Praze a 10:00 na hodinách v Londýně dávají dvě různá razítka.

Jak převést datum na Unix timestamp?

Půlnoc UTC 1. ledna 2025 odpovídá Unix timestampu 1735689600. Půlnoc téhož dne v Česku nastala o hodinu dřív, protože středoevropský čas je UTC plus jedna hodina[4]. Její razítko je 1735686000, tedy o 3600 sekund menší.

Razítko libovolného data zjistíš tak, že datum zadáš do pole Datum a čas, například 2025-01-01 00:00:00 nebo 01.01.2025 00:00. Výsledek v sekundách se objeví v poli Unix časové razítko. Pod ním převodník uvede stejný okamžik v milisekundách, tedy v jednotce, ve které vrací čas funkce Date.now() v JavaScriptu[5].

Datum bez pásma převodník počítá v UTC. Pokud zadáváš čas z českých hodin, zvol v přepínači Časové pásmo volbu Místní čas. Převodník pak zadaný čas spočítá v pásmu tvého zařízení, včetně letního času.

Datum s připsaným posunem, například 2025-01-01T00:00:00+01:00, se při obou volbách počítá podle tohoto posunu.

Hotový výsledek zkopíruješ tlačítkem Kopírovat výsledek.

Jak spočítat Unix timestamp pro datum? Vzorec a příklad

Razítko je počet celých dní od 1. ledna 1970 vynásobený číslem 86 400 a zvětšený o sekundy, které uplynuly od půlnoci daného dne[2].

Vezmi 14. listopad 2023, 22:13:20 UTC. Od 1. ledna 1970 do tohoto dne uplynulo 19 675 celých dní. Po vynásobení číslem 86 400 vyjde 1699920000 sekund.

Čas 22:13:20 je 80 000 sekund po půlnoci. Součet obou čísel dává razítko 1700000000.

Datum v českém čase nejdřív převeď na UTC. V zimě odečti jednu hodinu, tedy 3600 sekund[4]. V létě odečti dvě hodiny, tedy 7200 sekund[6]. Půlnoc 1. ledna 2025 v Česku je proto 1735689600 minus 3600, tedy 1735686000.

Výsledek zpátky na datum převede převodník Unix timestamp na datum. Pokud systém čeká razítko v šestnáctkové soustavě, převeď výsledek v převodníku desítkových čísel na šestnáctková. Razítko 1700000000 má šestnáctkově zápis 6553F100.

List kalendáře s lednem 2021 vedle květináče s rostlinou a malých hodin
Leden 2021 začal v pátek. Půlnoc UTC 1. ledna 2021 odpovídá unixovému razítku 1609459200. Foto: Debby Hudson, Unsplash.

Jaký Unix timestamp má 1. leden každého roku?

Každý řádek platí pro půlnoc 1. ledna. Sloupec Půlnoc UTC uvádí razítko tohoto okamžiku podle UTC a sloupec v milisekundách stejný okamžik v jednotce JavaScriptu. Sloupec Půlnoc v Česku uvádí razítko půlnoci na českých hodinách, které 1. ledna ukazují středoevropský čas, o hodinu napřed před UTC[4].
RokPůlnoc UTCPůlnoc UTC v milisekundáchPůlnoc v Česku
2000946684800946684800000946681200 (UTC+1)
2001978307200978307200000978303600 (UTC+1)
2002100984320010098432000001009839600 (UTC+1)
2003104137920010413792000001041375600 (UTC+1)
2004107291520010729152000001072911600 (UTC+1)
2005110453760011045376000001104534000 (UTC+1)
2006113607360011360736000001136070000 (UTC+1)
2007116760960011676096000001167606000 (UTC+1)
2008119914560011991456000001199142000 (UTC+1)
2009123076800012307680000001230764400 (UTC+1)
2010126230400012623040000001262300400 (UTC+1)
2011129384000012938400000001293836400 (UTC+1)
2012132537600013253760000001325372400 (UTC+1)
2013135699840013569984000001356994800 (UTC+1)
2014138853440013885344000001388530800 (UTC+1)
2015142007040014200704000001420066800 (UTC+1)
2016145160640014516064000001451602800 (UTC+1)
2017148322880014832288000001483225200 (UTC+1)
2018151476480015147648000001514761200 (UTC+1)
2019154630080015463008000001546297200 (UTC+1)
2020157783680015778368000001577833200 (UTC+1)
2021160945920016094592000001609455600 (UTC+1)
2022164099520016409952000001640991600 (UTC+1)
2023167253120016725312000001672527600 (UTC+1)
2024170406720017040672000001704063600 (UTC+1)
2025173568960017356896000001735686000 (UTC+1)
2026176722560017672256000001767222000 (UTC+1)
2027179876160017987616000001798758000 (UTC+1)
2028183029760018302976000001830294000 (UTC+1)
2029186192000018619200000001861916400 (UTC+1)
2030189345600018934560000001893452400 (UTC+1)
2031192499200019249920000001924988400 (UTC+1)
2032195652800019565280000001956524400 (UTC+1)
2033198815040019881504000001988146800 (UTC+1)
2034201968640020196864000002019682800 (UTC+1)
2035205122240020512224000002051218800 (UTC+1)
2036208275840020827584000002082754800 (UTC+1)
2037211438080021143808000002114377200 (UTC+1)
2038214591680021459168000002145913200 (UTC+1)
2039217745280021774528000002177449200 (UTC+1)
2040220898880022089888000002208985200 (UTC+1)
Razítko začátku roku 2038, 2145916800, se ještě vejde do 32bitového celého čísla se znaménkem. Poslední sekunda, kterou takové číslo zapíše, je 19. ledna 2038 ve 03:14:07 UTC[7]. Tuto hranici zapsanou dvojkově jako jedenatřicet jedniček uvidíš v převodníku desítkových čísel na dvojková.

Jaký Unix timestamp má změna času v Česku v roce 2026?

V roce 2026 se letní čas v Česku zavádí 29. března ve 2:00 středoevropského času, kdy se čas změní na 3:00. Končí 25. října ve 3:00 letního času, kdy se čas vrátí na 2:00[6]. Tabulka uvádí razítka sekund na obou stranách každé změny.
OkamžikHodiny v ČeskuUnix timestamp
Poslední sekunda středoevropského času29.03.2026, 01:59:59 SEČ1774745999
První sekunda letního času29.03.2026, 03:00:00 SELČ1774746000
První 2:30 v říjnu25.10.2026, 02:30:00 SELČ1792888200
Poslední sekunda letního času25.10.2026, 02:59:59 SELČ1792889999
První sekunda středoevropského času25.10.2026, 02:00:00 SEČ1792890000
Druhé 2:30 v říjnu25.10.2026, 02:30:00 SEČ1792891800
Hodina od 2:00 do 2:59 nastane 25. října dvakrát, takže 2:30 má ten den dvě razítka. Na zařízení s českým časovým pásmem dá zápis 2026-10-25 02:30:00 při volbě Místní čas to dřívější, 1792888200.

Jakým vzorcem převést datum na Unix timestamp v Excelu, SQL a kódu?

Každý řádek převádí 14. listopad 2023, 22:13:20 UTC, na razítko 1700000000. Výsledky Pythonu a JavaScriptu jsme pro toto datum ověřili.
KdeVzorec nebo výrazVýsledek
Excel=(A1-DATUM(1970;1;1))*864001700000000 pro datum 2023-11-14 22:13:20 v buňce A1
Excel, výsledek v milisekundách=(A1-DATUM(1970;1;1))*864000001700000000000
Tabulky Google=(A1-DATUM(1970;1;1))*864001700000000
MySQLSELECT UNIX_TIMESTAMP('2023-11-14 22:13:20');1700000000, když má relace pásmo UTC
PostgreSQLSELECT EXTRACT(EPOCH FROM TIMESTAMPTZ '2023-11-14 22:13:20+00');1700000000.000000
Pythondatetime(2023, 11, 14, 22, 13, 20, tzinfo=timezone.utc).timestamp()1700000000.0
JavaScriptDate.UTC(2023, 10, 14, 22, 13, 20) / 10001700000000
JavaScript, výsledek v milisekundáchDate.UTC(2023, 10, 14, 22, 13, 20)1700000000000
MySQL čte datum předané funkci UNIX_TIMESTAMP v časovém pásmu relace, tedy v pásmu nastaveném pro aktuální připojení[8]. V PostgreSQL počítá výraz EXTRACT(EPOCH FROM …) pro typ timestamp with time zone sekundy od 1970-01-01 00:00:00 UTC[9]. Date.UTC v JavaScriptu čísluje měsíce od nuly, takže listopad má číslo 10[10]. V Pythonu vrací metoda timestamp() objektu datetime s pásmem UTC počet sekund od epochy a objekt bez pásma se bere jako místní čas[11].

Jak převést datum na Unix timestamp v Excelu a Tabulkách Google?

U jednoho data je rychlejší pole nahoře. Celý sloupec dat převede tabulka na razítka vzorcem, který zkopíruješ do dalších řádků.

  1. Excel: rozdíl dat krát 86 400

    Do buňky A1 zapiš datum s časem a do buňky B1 vzorec =(A1-DATUM(1970;1;1))*86400. Excel ukládá data jako pořadová čísla[12], takže rozdíl dvou dat je počet dní. Vynásobení číslem 86 400 převede tyto dny na sekundy.
  2. Excel: číselný formát v buňce s výsledkem

    Pokud buňka B1 ukazuje výsledek jako datum, nastav jí formát Číslo bez desetinných míst. Pak uvidíš 1700000000.
  3. Datum v českém čase

    Vzorec bere datum z buňky A1 jako UTC. Pokud zadáváš čas z českých hodin, odečti od výsledku 3600 sekund u zimního data[4] nebo 7200 sekund u letního data[6].
  4. Tabulky Google: stejný vzorec

    Funkce DATUM má v českých Tabulkách Google argumenty rok, měsíc a den[13]. Vzorec =(A1-DATUM(1970;1;1))*86400 proto funguje stejně jako v Excelu.
  5. Excel: sešity s kalendářním systémem 1904

    Sešit může počítat data od 1. ledna 1904 místo od 1. ledna 1900 a rozdíl mezi oběma systémy je 1462 dní[14]. Vzorec odečítá 1. leden 1970 spočítaný v systému téhož sešitu, takže v obou systémech dá stejné razítko.

Jaký Unix timestamp dostane čas ze dne změny času?

Dne 25. října 2026 se v Česku čas ve 3:00 letního času vrací na 2:00 středoevropského času[6]. Každý čas od 2:00 do 2:59 pak nastane dvakrát a každému odpovídají dvě razítka.

V takové situaci převodník při volbě Místní čas vybere dřívější z obou okamžiků, stejně jako objekt Date v JavaScriptu[15]. Druhý okamžik, o hodinu pozdější, zadáš s připsaným posunem. Zápis 2026-10-25 02:30:00 +01:00 dá razítko 1792891800. Na zařízení s českým pásmem uvidíš oba okamžiky jako český čas, když tato razítka vložíš do převodníku Unix timestamp na datum a zvolíš Místní čas.

Dne 29. března 2026 se čas ve 2:00 středoevropského času mění na 3:00 letního času[6]. Čas 2:30 se ten den na českých hodinách neobjeví. Převodník takový zápis posune o hodinu dopředu, stejně jako Date[15], a uvede razítko pro 3:30 letního času.

Při volbě UTC má každý zadaný čas právě jedno razítko, protože UTC na letní čas nepřechází.

Pět nástěnných hodin s názvy měst Sídney, Londres, Monterrey, Vancouver a New York
Každé z těchto hodin ukazuje čas jiného města. Čas přečtený z jedněch z nich zadáš s volbou Místní čas na zařízení nastaveném na pásmo tohoto města, nebo k datu připíšeš posun pásma. Foto: Luis Cortes, Unsplash.

Zdroje

  1. Unixový časWikipedie
  2. The Open Group Base Specifications Issue 8 (POSIX.1-2024), 4.19 Seconds Since the EpochThe Open Group
  3. time — PHP ManualThe PHP Group
  4. Středoevropský časWikipedie
  5. Date.now()MDN Web Docs
  6. Nařízení vlády č. 348/2021 Sb., o zavedení letního času v letech 2022 až 2026epravo.cz
  7. Year 2038 problemWikipedia (anglicky)
  8. MySQL 8.4 Reference Manual, Date and Time FunctionsOracle
  9. PostgreSQL Documentation, Date/Time Functions and OperatorsPostgreSQL Global Development Group
  10. Date.UTC()MDN Web Docs
  11. datetime — Basic date and time typesPython Software Foundation
  12. DATUMMicrosoft Support
  13. DATUMNápověda Editory Dokumentů
  14. Systémy kalendářních dat v ExceluMicrosoft Support
  15. Temporal.ZonedDateTime, Ambiguity and gaps from offset transitionsMDN Web Docs
  16. RFC 7519: JSON Web Token (JWT)IETF
  17. Resolution 4 of the 27th CGPM (2022): On the use and future development of UTCBureau International des Poids et Mesures

Všechny hodnoty v tabulkách jsme spočítali z definic jednotek a před zveřejněním ověřili výpočtem. Historické údaje a názvy místních jednotek vycházejí ze zdrojů uvedených výše.

Poslední revize obsahu: · napsal a zkontroloval tým Arteon

Nejčastější otázky k převodu data na Unix timestamp

Jak spočítat Unix timestamp pro dnešní půlnoc v Česku?

Zadej dnešní datum bez času ve tvaru RRRR-MM-DD a v přepínači Časové pásmo zvol Místní čas. Datum bez času znamená půlnoc a volba Místní čas ji spočítá v pásmu tvého zařízení. Při volbě UTC dá stejný zápis půlnoc podle UTC.

Jak převést datum na Unix timestamp v milisekundách?

Pod výsledkem převodník uvádí stejný okamžik v milisekundách. Je to razítko v sekundách vynásobené tisícem. V milisekundách vrací výsledek i funkce Date.UTC v JavaScriptu[10].

Jaký Unix timestamp zapsat do pole exp tokenu JWT?

Pole exp obsahuje počet sekund od 1. ledna 1970 UTC a označuje okamžik, od kterého se token nesmí přijmout[16]. Zadej do převodníku datum a čas vypršení a výsledek z pole Unix časové razítko vlož do exp. Token platný hodinu od vydání má v poli exp hodnotu o 3600 vyšší než v poli iat. Datum vypršení existujícího tokenu zjistíš v převodníku Unix timestamp na datum.

Proč má listopad v Date.UTC číslo 10?

Date.UTC čísluje měsíce od nuly: leden má číslo 0 a prosinec 11[10]. Den v měsíci, hodiny, minuty a sekundy zadáváš v obvyklém tvaru. Datum 14. listopadu 2023 se proto v tomto výrazu zapíše jako Date.UTC(2023, 10, 14).

Jaké nejpozdější datum zapíše 32bitový Unix timestamp?

Poslední okamžik, který zapíše 32bitové celé číslo se znaménkem, je 19. ledna 2038 ve 03:14:07 UTC[7]. Šestnáctkově má toto maximum, 2147483647, zápis 7FFFFFFF, jak ukáže převodník desítkových čísel na šestnáctková. V MySQL na 64bitových platformách přijímá funkce UNIX_TIMESTAMP data do 19. ledna 3001 a pro datum mimo tento rozsah vrací 0[8].

Můžu zadat 23:59:60 s přestupnou sekundou?

Převodník přijímá sekundy od 00 do 59, protože v unixovém čase má každý den přesně 86 400 sekund[2]. Generální konference pro váhy a míry rozhodla v roce 2022, že nejpozději v roce 2035 se povolený rozdíl mezi časovými škálami UT1 a UTC zvětší[17].

Jak zadat datum s konkrétním časovým pásmem?

Připiš k datu posun pásma, například 2023-11-14 23:13:20 +01:00, nebo značku Z, UTC či GMT. Posun můžeš napsat i bez dvojtečky, jako +0100. Datum s vlastním pásmem se při obou volbách přepínače počítá podle něj.

Jak zadat datum s lomítky?

Pole přijímá lomítka v zápisu, který začíná rokem, například 2023/11/14. Datum s rokem na konci zadej s tečkami, jak je v Česku zvykem: 14.11.2023.

Jak převést Unix timestamp zpátky na datum?

Klikni na Prohodit pořadí. Otevře se převodník Unix timestamp na datum a razítko z pole Unix časové razítko už bude vepsané v jeho poli. Tento převodník přijímá i hodnoty v milisekundách, mikrosekundách a nanosekundách.

Snímek obrazovky bezplatného nástroje Arteon: Datum na Unix timestamp – převodník data a času na časové razítko

Pomozte nám vylepšit naše nástroje

Máte nápad, našli jste chybu nebo chcete navrhnout funkci? Napište nám – odpovídáme do 24 hodin.