Konverter Waktu Epoch
Konversi stempel waktu Unix ke tanggal UTC atau ubah tanggal menjadi detik epoch.
Cara menggunakan konverter waktu epoch ini
- Pilih mode konversi
Pilih Epoch ke tanggal atau Tanggal ke epoch pada kolom Mode konversi.
- Untuk epoch ke tanggal
Masukkan timestamp Unix dalam detik ke dalam kolom Timestamp epoch (detik).
- Untuk tanggal ke epoch
Pilih tanggal di Kalender tanggal, lalu atur Jam (UTC), Menit (UTC), dan Detik (UTC) sesuai kebutuhan.
- Baca hasilnya
Kalkulator ini menampilkan nilai UTC, milidetik Unix, dan hari dalam seminggu.
Cara kerja konverter waktu epoch ini
Konverter waktu epoch ini menerjemahkan antara stempel waktu Unix dan tanggal UTC yang dapat dibaca manusia. Waktu Unix — juga disebut waktu POSIX atau waktu epoch — menghitung jumlah detik yang telah berlalu sejak epoch Unix, yang didefinisikan sebagai tengah malam UTC pada 1 Januari 1970 (1970-01-01T00:00:00Z). Representasi integer tunggal ini adalah standar de-facto untuk menyimpan dan mengirimkan stempel waktu dalam basis data, API, file log, token JWT, dan hampir setiap bahasa pemrograman modern. Konverter ini menangani kedua arah: memasukkan stempel waktu numerik akan menghasilkan tanggal UTC, hari dalam seminggu, dan ekuivalen milidetik yang sesuai, sementara memasukkan tanggal dan waktu kalender akan menghasilkan nilai epoch dalam detik dan milidetik.
Waktu Unix = detik yang berlalu sejak 1970-01-01T00:00:00Z Untuk mengonversi timestamp Unix 1.700.000.000 ke tanggal: mulai dari 1970-01-01 00:00:00 UTC, tambahkan 1.700.000.000 detik. Ini setara dengan 19.675 hari, 17 jam, 46 menit, dan 40 detik. Hasil tanggal UTC adalah 2023-11-14 pukul 22:13:20 UTC, yang jatuh pada hari Selasa. Setara milidetiknya adalah 1.700.000.000.000. Sebaliknya, memasukkan 14 November 2023 pukul 22:13:20 UTC menghasilkan nilai epoch tepat 1.700.000.000.
Timestamp 0 dikonversi menjadi 1970-01-01 00:00:00 UTC (Kamis). Setara milidetiknya adalah 0.
Timestamp 1.704.000.000 dikonversi menjadi 2023-12-31 12:00:00 UTC (Minggu). Memasukkan tanggal dan waktu tersebut dalam mode Tanggal ke epoch akan menghasilkan 1.704.000.000.
- ✓ Semua perhitungan dalam UTC. Konversi waktu lokal memerlukan penerapan selisih zona waktu yang sesuai setelah konversi.
- ✓ Detik kabisat tidak dihitung. Seperti POSIX, konverter ini menganggap setiap hari tepat 86.400 detik, yang sesuai dengan perilaku sebagian besar bahasa pemrograman dan sistem operasi.
- ✓ Stempel waktu negatif mewakili tanggal sebelum epoch (1 Januari 1970). Misalnya, −86400 sesuai dengan 31 Desember 1969.
- ✓ Stempel waktu milidetik harus dibagi 1.000 sebelum dimasukkan; konverter menerima detik sebagai input dan menampilkan ekuivalen milidetik dalam hasil.
- Date.now() pada JavaScript dan System.currentTimeMillis() pada Java mengembalikan milidetik, bukan detik — bagi dengan 1.000 sebelum memasukkan nilai di sini, atau gunakan output milidetik untuk perbandingan.
- Masalah Tahun 2038 memengaruhi timestamp integer bertanda 32-bit, yang akan meluap pada 19 Januari 2038 pukul 03:14:07 UTC. Sebagian besar sistem modern telah bermigrasi ke timestamp 64-bit.
- Saat men-debug respons API atau file log, perhatikan timestamp yang tampak selisih tepat 3.600 atau 7.200 detik — ini biasanya menunjukkan adanya offset zona waktu yang diterapkan (atau diabaikan) di suatu tempat dalam alur proses.
- Waktu epoch selalu meningkat secara monoton (mengabaikan penyesuaian detik kabisat), menjadikannya ideal untuk mengurutkan peristiwa, menghitung durasi, dan menghasilkan pengidentifikasi unik berbasis waktu.
- IEEE Std 1003.1 (POSIX) — definisi Detik Sejak Epoch
- Asal usul epoch Unix — dokumentasi The Unix Heritage Society dan Bell Labs
- RFC 3339 — Tanggal dan Waktu di Internet: Timestamp
Apa itu Unix timestamp?
Unix timestamp adalah jumlah detik yang telah berlalu sejak tengah malam UTC pada 1 Januari 1970 — epoch Unix. Bilangan bulat tunggal ini adalah standar de-facto untuk merepresentasikan waktu dalam basis data, API, file log, dan sebagian besar bahasa pemrograman. Karena tidak bergantung pada zona waktu dan meningkat secara monoton, ini menyederhanakan pengurutan, perhitungan durasi, dan perbandingan berbasis waktu. Date.now() pada JavaScript dan banyak API mengembalikan milidetik (1.000 × detik), jadi bagi dengan 1.000 sebelum memasukkan nilai milidetik di sini. Timestamp negatif mewakili tanggal sebelum 1970; misalnya, −86400 adalah tepat satu hari sebelum epoch.
Kasus penggunaan pengembang untuk waktu epoch
Pengembang menggunakan Unix timestamp saat menyimpan waktu kejadian dalam basis data, menserialisasikan tanggal dalam API JSON, membuat kunci cache berbasis waktu, dan men-debug entri log. Kolom basis data sering kali menyimpan timestamp sebagai bilangan bulat untuk pengindeksan dan kueri rentang yang efisien. Respons API sering kali mengembalikan detik atau milidetik epoch untuk menghindari ambiguitas zona waktu. Saat men-debug, mengonversi timestamp mentah dari log atau klaim JWT ke tanggal yang dapat dibaca manusia dengan cepat mengungkapkan apakah nilainya benar atau meleset karena faktor zona waktu. Waktu epoch juga digunakan untuk pembatasan laju (rate limiting), kedaluwarsa sesi, dan pembuatan pengidentifikasi unik yang dapat diurutkan dalam sistem terdistribusi.
FAQ konverter waktu epoch
Apa itu epoch Unix?
Epoch Unix adalah titik referensi pengukuran waktu Unix: tengah malam UTC pada 1 Januari 1970 (1970-01-01T00:00:00Z). Timestamp 0 sesuai dengan momen tepat tersebut.
Mengapa timestamp JavaScript saya memiliki lebih banyak digit?
Date.now() JavaScript mengembalikan milidetik sejak epoch, bukan detik. Bagi dengan 1.000 untuk mengonversi ke format berbasis detik yang digunakan alat ini, atau bandingkan langsung dengan output milidetik.
Bisakah saya memasukkan stempel waktu negatif?
Ya. Nilai negatif mewakili tanggal sebelum epoch. Misalnya, −86400 sesuai dengan 1969-12-31T00:00:00Z, tepat satu hari sebelum epoch.
Apakah ini menangani detik kabisat?
Tidak, dan ini sesuai dengan standar POSIX. Waktu POSIX mengasumsikan setiap hari tepat 86.400 detik. 27 detik kabisat yang dimasukkan sejak 1972 tidak direpresentasikan secara individual, yang berarti UTC dan waktu Unix dapat berbeda hingga satu detik pada batas detik kabisat.
Apa itu masalah Tahun 2038?
Sistem yang menyimpan waktu Unix sebagai integer bertanda 32-bit akan mengalami overflow pada 19 Januari 2038 pukul 03:14:07 UTC, berbalik ke angka negatif besar dan menghasilkan tanggal di tahun 1901. Sebagian besar platform modern sekarang menggunakan stempel waktu 64-bit, yang tidak akan overflow selama lebih dari 290 miliar tahun.