Znacznik czasu Unix
Dwukierunkowy konwerter: wpisz znacznik czasu Unix (sekundy lub milisekundy) albo datę tekstową, a kalkulator zwróci sekundy, milisekundy, ISO 8601 UTC i czas lokalny — z przyciskiem Teraz i kopiowaniem jednym kliknięciem.
Wynik
Wprowadź dane i kliknij Oblicz.
Epoka Unix (1970)
Znacznik czasu Unix to liczba sekund, które minęły od 1970-01-01 00:00:00 UTC — punktu zwanego "epoką". Daty przed epoką mają wartości ujemne. To najprostszy sposób przechowywania czasu jako pojedynczej liczby, niezależnie od strefy czasowej i formatu tekstowego.
Timestamp w logach i API
- Logi serwerów, kolejki wiadomości i bazy danych często zapisują czas jako epoch — łatwo sortować, porównywać, indeksować.
- REST API zwracają czas jako
created_at: 1700000000(sekundy) albo w ISO 8601 ("2023-11-14T22:13:20Z") — ten kalkulator obsługuje oba formaty wejściowe. - JWT używa sekund Unix w polach
iat,exp,nbf.
Liczba cyfr: sekundy vs milisekundy
Mylenie jednostek to częsty bug (JS Date.now() = ms, wiele API = s). Długość liczby to szybki sanity check.
| Liczba cyfr | Zwykle oznacza | Przykład |
|---|---|---|
| ~10 | sekundy od epoki | 1700000000 |
| ~13 | milisekundy | 1700000000000 |
| ~16 | czasem mikrosekundy | 1700000000000000 |
Sekundy vs milisekundy — częsta pułapka
JavaScript Date.now() zwraca milisekundy, a wiele API i baz danych — sekundy. Pomylenie jednostek daje datę przesuniętą o tysiące lat (np. traktowanie sekund jako milisekund daje datę w roku 1970 + ułamek dnia). Znak rozpoznawczy: timestamp w sekundach ma ok. 10 cyfr (do roku ~2286), w milisekundach — ok. 13 cyfr.
UTC vs czas lokalny
Znacznik Unix sam w sobie nie ma strefy czasowej — to zawsze ta sama chwila w czasie, niezależnie skąd na świecie na nią patrzysz. "Czas lokalny" w wyniku to interpretacja tej samej chwili według strefy czasowej Twojego urządzenia/przeglądarki — inny użytkownik zobaczy inną godzinę zegarową dla tego samego timestampa.
Daty przed 1970 (ujemny timestamp)
Timestamp może być ujemny — oznacza datę przed epoką (np. -100000 to 1969-12-30). Większość nowoczesnych systemów obsługuje to poprawnie, ale niektóre starsze API i formaty binarne (np. 32-bit unsigned) tego nie potrafią.
Przykłady
0(sekundy) = 1970-01-01T00:00:00Z — sama epoka.1700000000(sekundy) = 2023-11-14T22:13:20Z.1700000000000(milisekundy) = ta sama chwila — tylko inna jednostka.
FAQ — znacznik czasu Unix
- Jak sprawdzić, czy liczba jest w sekundach czy milisekundach?
- Policz cyfry: ~10 cyfr to sekundy (do roku 2286), ~13 cyfr to milisekundy. Kalkulator rozpoznaje to automatycznie dla liczb 13+ cyfr, niezależnie od wybranego trybu.
- Czy mogę wkleić samą datę, np. 2024-06-15?
- Tak — pole akceptuje też tekstowe daty i ISO 8601, nie tylko liczby.
- Co robi przycisk "Teraz"?
- Wstawia bieżący timestamp (w wybranym trybie sekundy/milisekundy) i natychmiast oblicza wynik.
- Czym różni się ISO 8601 od "czasu lokalnego"?
- ISO 8601 (UTC) to jednoznaczny, uniwersalny zapis tej samej chwili. "Czas lokalny" pokazuje tę samą chwilę w strefie czasowej Twojego urządzenia.
- Czy timestamp Unix może być ujemny?
- Tak — oznacza datę przed 1970-01-01. Większość języków programowania obsługuje to poprawnie.
- Do kiedy sięga zakres 32-bitowego timestampa?
- Klasyczny 32-bitowy signed int przekracza zakres 2038-01-19 ("Year 2038 problem"). Nowoczesne systemy 64-bitowe nie mają tego ograniczenia.
- Czy JWT używa sekund czy milisekund?
- Standard JWT (RFC 7519) definiuje pola
iat/exp/nbfw sekundach Unix, nie milisekundach. - Czy wynik zależy od strefy czasowej mojego urządzenia?
- Pole UTC/ISO nie zależy — to zawsze ta sama wartość. Pole "czas lokalny" zależy od strefy ustawionej w Twojej przeglądarce/systemie.