Połącz lukę między czasem epoch a datami czytelnymi dla człowieka. Przekonwertuj dowolny znacznik czasu Unix na czytelną datę lub odwrotnie — plus podgląd aktualnego znacznika czasu na żywo jednym kliknięciem.
Ładowanie kalkulatora...
Czy to narzędzie Ci pomogło?
Czym jest Konwerter Znacznika Czasu Unix?
Konwerter znaczników czasu Unix konwertuje między znacznikami czasu Unix (sekundy od epoki) a czytelnymi dla człowieka formatami daty/czasu. Wyświetla również aktualny czas Unix jednym kliknięciem. Niezbędny dla programistów pracujących z danymi czasowymi.
Kiedy używać tego kalkulatora
Debugujesz API, które zwraca znaczniki czasu Unix i musisz je odczytać jako ludzkie daty
Piszesz kod, który przechowuje lub porównuje daty i musisz konwertować między znacznikiem czasu a formatem daty
Potrzebujesz aktualnego znacznika czasu Unix dla wpisu w logu, wywołania API lub rekordu bazy danych
Analizujesz logi serwera, w których znaczniki czasu są w formacie epoch
Chcesz zweryfikować, czy znacznik czasu w Twoim kodzie odpowiada właściwej dacie i godzinie
Pracujesz z bazami danych lub systemami plików, które używają znaczników czasu Unix dla metadanych plików
Kroki:
Wprowadź znacznik czasu Unix, aby przekonwertować go na czytelną datę.
Lub wprowadź datę/czas, aby przekonwertować ją na znacznik czasu Unix.
Kliknij przycisk aktualnego czasu, aby uzyskać bieżący znacznik czasu Unix.
Skopiuj wyniki za pomocą przycisku kopiowania.
Wzór
Znacznik czasu → Data: new Date(timestamp × 1000)
Data → Znacznik czasu: Math.floor(date.getTime() / 1000)
Epoka Unix: 1 stycznia 1970 00:00:00 UTC
Maksymalny 32-bitowy znacznik czasu: 19 stycznia 2038 (03:14:07 UTC)
Przypadki użycia
Debugowanie odpowiedzi API ze znacznikami czasu
Konwertowanie wartości znaczników czasu bazy danych
Ustawianie dat wygaśnięcia w kodzie
Analiza logów i interpretacja danych szeregów czasowych
Kluczowe korzyści
Konwertuj znaczniki czasu i daty natychmiast
Aktualny czas Unix jednym kliknięciem
Wyświetlanie w czasie lokalnym i UTC
Za darmo, bez konieczności rejestracji
Wskazówki
Zawsze przechowuj znaczniki czasu w UTC w bazach danych
Konwertuj na czas lokalny tylko do wyświetlania
Używaj 64-bitowych liczb całkowitych do przechowywania znaczników czasu
Weryfikuj znaczniki czasu w obu kierunkach przed poleganiem na nich
Częste błędy
Zapominanie, że JavaScript używa milisekund (×1000)
Zakładanie, że wszystkie API używają tego samego formatu znacznika czasu
Nieuwzględnianie różnic stref czasowych
Używanie 32-bitowych liczb całkowitych dla znaczników czasu w nowych systemach
Kluczowe pojęcia
Znacznik czasu Unix: Sekundy od 1 stycznia 1970 UTC
Epoka: Punkt odniesienia do pomiaru czasu
UTC: Uniwersalny Czas Koordynowany
Problem roku 2038: Przepełnienie 32-bitowej liczby całkowitej
Powiązane pojęcia
Epoka Unix: 1 stycznia 1970 00:00:00 UTC, punkt odniesienia, od którego mierzone są wszystkie znaczniki czasu Unix
Czas Epoch: System reprezentowania czasu jako liczby sekund, które upłynęły od epoki Unix
UTC (Uniwersalny Czas Koordynowany): Podstawowy standard czasu, według którego świat reguluje zegary i czas, niezależny od strefy czasowej
Problem Roku 2038: Data, kiedy 32-bitowe znaczniki czasu Unix ulegną przepełnieniu, potencjalnie powodując, że systemy zinterpretują datę jako 1901
ISO 8601: Międzynarodowy standard reprezentowania dat i godzin (np. 2024-06-29T12:00:00Z) jako alternatywa dla znaczników czasu Unix
Przykład
Aktualny znacznik czasu: 1719676800 → Data: 29 czerwca 2024 12:00:00 PM UTC. Konwersja daty: "1 stycznia 2025 00:00:00 UTC" → Znacznik czasu: 1735689600.
Interpretacja wyników
Konwerter działa w dwóch kierunkach: wprowadzenie znacznika czasu Unix daje czytelną dla człowieka datę, a wprowadzenie daty daje znacznik czasu Unix. Aktualny czas Unix jest wyświetlany u góry z przyciskiem odświeżania, więc zawsze możesz zobaczyć znacznik czasu na żywo bez wpisywania czegokolwiek.
Znaczniki czasu Unix liczą sekundy od 1 stycznia 1970 UTC (epoka Unix). Są niezależne od strefy czasowej — ten sam znacznik czasu reprezentuje tę samą chwilę wszędzie na Ziemi. Gdy wprowadzasz datę, konwerter używa Twojego lokalnego przesunięcia strefy czasowej do obliczenia znacznika czasu, ale możesz przełączyć na UTC, jeśli potrzebujesz wyników neutralnych wobec strefy czasowej.
Problem 2038 warto zrozumieć: 32-bitowe liczby całkowite ze znakiem ulegają przepełnieniu 19 stycznia 2038, co oznacza, że starsze systemy używające 32-bitowych znaczników czasu zawiną się do wartości ujemnych. Nowoczesne systemy używają 64-bitowych znaczników czasu, które nie ulegną przepełnieniu przez miliardy lat. Jeśli napotkasz nieoczekiwane daty wokół 1901 lub 2038, przepełnienie 32-bitowe jest prawdopodobną przyczyną.
Najczęściej Zadawane Pytania
Co to jest znacznik czasu Unix?
Znacznik czasu Unix to liczba sekund, które upłynęły od 1 stycznia 1970 roku o 00:00:00 UTC (epoki Uniksa). Jest to uniwersalne odniesienie czasowe używane w programowaniu i informatyce.
Dlaczego znaczniki czasu są przydatne?
Znaczniki czasu zapewniają niezależny od strefy czasowej sposób przechowywania i porównywania czasów. Są używane w bazach danych, API, logowaniu i każdym systemie, który potrzebuje precyzyjnego śledzenia czasu.
Na czym polega problem roku 2038?
19 stycznia 2038 roku 32-bitowe znaczniki czasu Unix ulegną przepełnieniu, ponieważ maksymalna 32-bitowa liczba całkowita ze znakiem (2 147 483 647) zostanie przekroczona. Nowoczesne systemy używają 64-bitowych znaczników czasu, aby tego uniknąć.
Jaka jest różnica między sekundami a milisekundami w znacznikach czasu?
Standardowe znaczniki czasu Unix są w sekundach. JavaScript i wiele nowoczesnych API używa milisekund (pomnóż sekundy przez 1000). Jeśli otrzymujesz nieoczekiwane daty, sprawdź, czy znacznik czasu jest w sekundach czy milisekundach — znacznik czasu w milisekundach interpretowany jako sekundy pokaże datę odległą w przyszłości i odwrotnie.
Dlaczego mój znacznik czasu pokazuje inną datę niż się spodziewałem?
Najczęstsze przyczyny to: znacznik czasu jest w milisekundach zamiast sekund (lub odwrotnie), różnica stref czasowych między miejscem wygenerowania znacznika a miejscem, w którym go przeglądasz, lub przepełnienie 32-bitowe dla bardzo dużych lub bardzo małych wartości. Przełączaj między UTC a czasem lokalnym, aby wykluczyć problemy ze strefą czasową.
Czy mogę konwertować znaczniki czasu sprzed 1970 roku?
Tak. Znaczniki czasu sprzed 1 stycznia 1970 roku są reprezentowane jako liczby ujemne. Na przykład -86400 reprezentuje 31 grudnia 1969 roku o 00:00:00 UTC. Konwerter poprawnie obsługuje ujemne znaczniki czasu.
Jaki format bazy danych zwykle używają dla znaczników czasu?
Większość relacyjnych baz danych (PostgreSQL, MySQL) obsługuje zarówno znaczniki czasu Unix (jako kolumny całkowitoliczbowe), jak i natywne typy datetime/timestamp. TIMESTAMPTZ PostgreSQL przechowuje znaczniki czasu uwzględniające strefę czasową wewnętrznie. Wybór zależy od potrzeb Twojej aplikacji — znaczniki czasu Unix są prostsze do porównań, podczas gdy natywne typy datetime są bardziej czytelne w zapytaniach.
Jak obsługiwać konwersje stref czasowych ze znacznikami czasu Unix?
Znaczniki czasu Unix są zawsze w UTC wewnętrznie. Aby wyświetlić w lokalnej strefie czasowej, zastosuj przesunięcie strefy czasowej w momencie wyświetlania. Większość języków programowania ma wbudowane funkcje konwersji stref czasowych. W JavaScript: new Date(timestamp * 1000).toLocaleString('en-US', { timeZone: 'America/New_York' }).
Jaka jest maksymalna wartość znacznika czasu Unix?
64-bitowa liczba całkowita ze znakiem może reprezentować znaczniki czasu do około 292 miliardów lat od epoki — znacznie przekraczając wiek wszechświata. Praktycznie rzecz biorąc, 64-bitowe znaczniki czasu nigdy nie ulegną przepełnieniu. Limit 32-bitowy (2 147 483 647 sekund) odpowiada 19 stycznia 2038 roku o 03:14:07 UTC.
Dlaczego niektóre systemy odchodzą od znaczników czasu Unix?
Znaczniki czasu Unix tracą czytelność dla ludzi i nie obsługują elegancko sekund przestępnych, zmian stref czasowych ani reform kalendarza. Ciągi ISO 8601 (np. 2024-06-29T12:00:00Z) są samodokumentujące się i uwzględniają strefę czasową. Jednak znaczniki czasu Unix pozostają popularne ze względu na swoją prostotę, zwięzłość i niezależność od strefy czasowej w przechowywaniu i obliczeniach.