timestamp | epoch | konwertuj

> timestamp | epoch | konwertuj <

// Konwertuj znaczniki czasu Unix na daty i daty na znaczniki czasu natychmiast

AKTUALNY TIMESTAMP
[NA ŻYWO]

Zegar czasu rzeczywistego

Aktualizowany na żywo wyświetlacz Unix timestamp. Zobacz aktualny czas epoch w czasie rzeczywistym.

[DWUKIERUNKOWY]

Konwersja dwukierunkowa

Konwertuj znaczniki czasu na czytelne daty i daty z powrotem na znaczniki czasu. Oba kierunki obsługiwane.

[DARMOWY]

Wiele formatów

Przeglądaj wyniki w ISO 8601, RFC 2822, UTC, czasie lokalnym i czasie względnym.

// O UNIX TIMESTAMP

Jak działają Unix timestamps:

Unix timestamp (znany również jako czas epoch lub czas POSIX) reprezentuje liczbę sekund, które upłynęły od 1 stycznia 1970 00:00:00 UTC (epoka Unix). Ta prosta wartość całkowita zapewnia uniwersalny, niezależny od strefy czasowej sposób reprezentowania konkretnego momentu w czasie.

Przykład:

1711324800 → 2024-03-25T00:00:00.000Z

Typowe zastosowania:

  • >Przechowywanie i zapytania timestampów w bazach danych
  • >Pola czasowe w odpowiedziach API
  • >Analiza timestampów w plikach logów
  • >Debugowanie problemów związanych z czasem
  • >Koordynacja czasu między strefami czasowymi
  • >Problem Y2K38: 32-bitowe liczby całkowite przepełnią się 19 stycznia 2038

>> często zadawane pytania

P: Czym jest Unix timestamp?

O: Unix timestamp to liczba sekund, które upłynęły od 1 stycznia 1970 00:00:00 UTC. To prosta wartość całkowita używana powszechnie w informatyce.

P: Czym jest czas epoch?

O: Czas epoch to inna nazwa dla Unix timestamp. „Epoch” odnosi się do punktu odniesienia: 1 stycznia 1970 00:00:00 UTC.

P: Czym jest problem Y2038?

O: Problem roku 2038 (Y2K38) występuje, ponieważ wiele systemów przechowuje Unix timestamps jako 32-bitowe liczby całkowite ze znakiem, które mogą reprezentować czasy tylko do 19 stycznia 2038 03:14:07 UTC.

P: Jaka jest różnica między timestampami w sekundach i milisekundach?

O: Unix timestamps w sekundach mają 10 cyfr (np. 1711324800), podczas gdy timestampy w milisekundach mają 13 cyfr (np. 1711324800000).

P: Czy Unix timestamps mogą być ujemne?

O: Tak, ujemne Unix timestamps reprezentują daty przed 1 stycznia 1970. Na przykład, -86400 reprezentuje 31 grudnia 1969.

// Ściąga: długość znacznika czasu

Policz cyfry, aby rozpoznać jednostkę. Pomylenie sekund z milisekundami to najczęstsza przyczyna błędnej daty.

CyfryJednostkaPrzykładTypowe źródło
10s1711324800Unix/Linux, PHP time(), Stripe
13ms1711324800000JavaScript Date.now(), Java
16µs1711324800000000Kafka, Cassandra
19ns1711324800000000000Go UnixNano(), InfluxDB

// Pobieranie bieżącego znacznika czasu w kodzie

JavaScript  Math.floor(Date.now() / 1000)
Python      int(time.time())
PHP         time()
Go          time.Now().Unix()
Java        Instant.now().getEpochSecond()
Ruby        Time.now.to_i
Bash        date +%s

>> Więcej pytań

P: Czy Unix timestamp jest w UTC czy w czasie lokalnym?

O: Zawsze w UTC. Liczba całkowita to bezwzględny moment bez strefy czasowej; strefę stosuje się dopiero przy wyświetlaniu jako data. Zapisuj w UTC, wyświetlaj lokalnie.

P: Dlaczego mój timestamp pokazuje złą datę?

O: Zwykle pomylono sekundy z milisekundami: wartość 13-cyfrowa odczytana jako sekundy daje rok ok. 55 000, a 10-cyfrowa odczytana jako milisekundy — styczeń 1970. Sprawdź też konwersję strefy czasowej oraz czy to nie jest Windows FILETIME lub data z Excela.

P: Jak sekundy przestępne wpływają na Unix timestamp?

O: Nie wpływają. Czas Unix liczy dokładnie 86 400 sekund na dobę i ignoruje sekundy przestępne, które są powtarzane lub rozkładane (leap smear). Dla niemal wszystkich zastosowań to wystarcza; do pomiarów naukowych używa się TAI.

P: Czy istnieją inne epoki niż Unix?

O: Tak: NTP używa 1900-01-01, Windows FILETIME 1601-01-01 (kroki 100 ns), Excel liczy dni od 1899-12-30, a Mac HFS+ używał 1904-01-01. Jeśli wartość jest daleko od obecnej liczby Unix, to prawdopodobnie jedna z tych odmian.

// INNE JĘZYKI