Konverter Unix Timestamp
Konversi Unix timestamp dalam detik atau milidetik ke tanggal yang mudah dibaca dalam waktu lokal, UTC, dan ISO 8601, lalu ubah tanggal kembali ke epoch.
Timestamp → tanggal
- Waktu lokal
- –
- UTC
- –
- ISO 8601
- –
Tanggal → timestamp
- Detik
- –
- Milidetik
- –
Cara menggunakan konverter Unix timestamp
- Untuk mengonversi timestamp ke tanggal, tempel nilai epoch seperti
1700000000atau1700000000000di bagian Timestamp → tanggal. Alat ini mendeteksi dari besarnya angka apakah nilainya dalam detik atau milidetik. - Baca hasilnya dalam Waktu lokal zona waktu Anda, dalam UTC, dan dalam format ISO 8601.
- Untuk arah sebaliknya, masukkan tanggal dan waktu di bagian Tanggal → timestamp; alat ini mengembalikan nilai epoch yang sesuai dalam Detik dan Milidetik.
- Lihat Timestamp saat ini di bagian atas, yang diperbarui secara langsung, kapan pun Anda membutuhkan “sekarang” sebagai nilai epoch.
Apa itu Unix timestamp?
Unix timestamp, juga disebut epoch time atau waktu POSIX, adalah jumlah detik yang telah berlalu sejak Unix epoch: 1 Januari 1970 pukul 00.00.00 UTC. Misalnya, 1700000000 sama dengan 14 November 2023 pukul 22.13.20 UTC. Tanggal sebelum 1970 dinyatakan dengan angka negatif.
Timestamp populer di kalangan developer karena berupa satu angka yang tidak bergantung pada zona waktu, waktu musim panas, atau format tanggal. Membandingkan dua momen cukup dengan pengurangan, dan mengurutkan berdasarkan waktu cukup dengan pengurutan angka. Anda akan menemukannya di database, file log, respons API, klaim JWT seperti exp dan iat, metadata file, dan penjadwal seperti cron.
Perlu dicatat bahwa waktu Unix mengabaikan detik kabisat: setiap hari dihitung tepat 86.400 detik. Hal ini membuat aritmetikanya tetap sederhana, dan itulah sebabnya timestamp bukan hitungan ketat setiap detik fisik sejak 1970.
Detik vs. milidetik
Sumber kebingungan yang paling sering adalah satuannya. Sistem Unix tradisional, PHP, time.time() di Python, dan sebagian besar database memakai detik, yang saat ini menghasilkan angka 10 digit. Date.now() di JavaScript, System.currentTimeMillis() di Java, dan banyak API JSON memakai milidetik, yang menghasilkan angka 13 digit. Membaca milidetik sebagai detik membawa Anda puluhan ribu tahun ke masa depan; membaca detik sebagai milidetik membawa Anda ke Januari 1970. Alat ini melihat besarnya angka untuk memilih satuan yang tepat secara otomatis, dan saat mengonversi tanggal, alat ini menampilkan kedua nilai agar Anda bisa menyalin yang diharapkan sistem Anda.
Waktu lokal, UTC, dan ISO 8601
Sebuah timestamp mengidentifikasi satu momen yang tepat, tetapi momen itu ditampilkan berbeda tergantung zona waktunya. Hasil lokal memakai zona waktu yang diatur di perangkat Anda (misalnya WIB, WITA, atau WIT), sedangkan UTC adalah acuan universal yang dipakai server dan log. ISO 8601, seperti 2023-11-14T22:13:20.000Z, adalah format teks yang tidak ambigu dan disarankan untuk pertukaran tanggal antarsistem; huruf Z di akhir berarti UTC.
Masalah tahun 2038
Banyak sistem lama menyimpan waktu Unix sebagai bilangan bulat 32 bit bertanda, yang nilai maksimumnya 2.147.483.647. Batas itu tercapai pada 19 Januari 2038 pukul 03.14.07 UTC. Satu detik kemudian, penghitung seperti itu meluap menjadi angka negatif yang besar dan dibaca sebagai tanggal di bulan Desember 1901. Sistem operasi, database, dan bahasa pemrograman modern sebagian besar sudah beralih ke nilai waktu 64 bit, yang mendorong batasnya miliaran tahun ke depan, tetapi perangkat embedded, format file lama, dan kolom database lama mungkin masih terdampak. JavaScript sendiri tidak terdampak, karena menyimpan waktu sebagai milidetik dalam bilangan floating-point 64 bit.
Privasi
Semua konversi berlangsung di browser Anda dengan fungsi tanggal bawaannya. Tidak ada timestamp atau tanggal yang dikirim ke server.
Pertanyaan yang sering diajukan
Bagaimana cara mengetahui apakah timestamp saya dalam detik atau milidetik?
Hitung digitnya. Tanggal saat ini terdiri dari 10 digit dalam detik dan 13 digit dalam milidetik. Alat ini menerapkan logika yang sama secara otomatis, berdasarkan besarnya angka.
Mengapa waktu lokal berbeda dengan UTC?
Keduanya menggambarkan momen yang sama. Waktu lokal menerapkan selisih zona waktu perangkat Anda dan aturan waktu musim panas (jika ada), sedangkan UTC tidak memiliki selisih. Jika Anda membagikan waktu kepada orang di tempat lain, UTC atau ISO 8601 menghindari salah paham.
Bisakah Unix timestamp bernilai negatif?
Bisa. Nilai negatif mewakili momen sebelum 1 Januari 1970 UTC. Misalnya, -86400 adalah 31 Desember 1969 pukul 00.00.00 UTC.
Apakah Unix timestamp mengandung zona waktu?
Tidak. Timestamp selalu relatif terhadap UTC dan tidak membawa informasi zona waktu. Zona waktu baru penting saat Anda menampilkannya sebagai tanggal dan jam kalender.
Apakah sistem saya akan rusak pada tahun 2038?
Hanya jika sistem tersebut menyimpan waktu dalam bilangan bulat 32 bit bertanda. Periksa database lama, firmware embedded, dan format file biner. Apa pun yang memakai waktu 64 bit aman untuk masa yang dapat diperkirakan.
Alat terkait
- UUID Generator UUID generator gratis untuk UUID versi 4 dan versi 7. Buat hingga 1.000 sekaligus, huruf kapital atau tanpa tanda hubung, lalu salin atau unduh .txt.
- JSON Formatter dan Validator JSON formatter dan validator gratis untuk merapikan, minify, dan memeriksa JSON di browser Anda, dengan kesalahan sintaksis yang dilaporkan per baris dan kolom.