MCP ile bağlan →

Hesaplamaya Girin

Varsayılan değer UTC+9'dur (Japonya saati). UTC'nin gerisindeki bölgeler için negatif değer kullanın.

Formül

Reklam

Sonuç

UNIX Zamanı
1.749.913.200
1970-01-01 00:00:00 UTC'den bu yana geçen saniye
Tanım POSIX zamanı (artık saniye yok)
Başlangıç anı (epoch) 1970-01-01 00:00:00 UTC

UNIX zamanı nedir?

UNIX zamanı (UNIX timestamp ya da POSIX zamanı olarak da bilinir), UNIX başlangıç anından, yani 1970-01-01 00:00:00 UTC'den bu yana geçen saniye sayısıdır. Bir an'ı tek bir tam sayı olarak ifade etmenin evrensel ve dilden bağımsız bir yoludur; loglarda, veritabanlarında, API'lerde ve programlamada yaygın olarak kullanılır. Artık saniyeler hesaba katılmaz — her gün tam olarak 86.400 saniye kabul edilir.

UNIX epoch başlangıç noktasını ve ileri doğru sayılan saniyeleri gösteren zaman çizelgesi
UNIX zamanı, başlangıç noktasından (epoch) 1970-01-01 00:00:00 UTC itibaren geçen saniyeleri sayar.

Bu hesaplayıcı nasıl kullanılır?

Takvim tarihini (yıl, ay, gün) ve saati (saat, dakika, saniye) yerel saatte, yani duvardaki saatte göründüğü gibi girin. Ardından "UTC'den zaman farkı" alanına o yerel saatin saat cinsinden zaman dilimi farkını yazın. Örneğin Japonya +9, Hindistan +5,5, ABD Pasifik Standart Saati ise -8'dir. Türkiye için bu değer +3'tür. Varsayılan fark +9'dur (Japonya saati). Saat, dakika ve saniye alanlarını boş bırakırsanız sıfır olarak alınır.

Formülün açıklaması

Önce tarih, Howard Hinnant'ın "days-from-civil" algoritmasıyla bir gün sayısına dönüştürülür. Bu algoritma, artık yıllar ve 1970 öncesi tarihler dahil olmak üzere herhangi bir Gregoryen tarih için başlangıç anından itibaren günleri doğru biçimde sayar. Bu gün sayısı 86.400 ile çarpılır ve yerel saatteki 1970-01-01 00:00:00'dan itibaren saniyeyi elde etmek için saat, dakika ve saniye eklenir. Son olarak sonucu UTC'ye taşımak için UTC farkı (saat × 3600) çıkarılır.

$$t = 86400 \cdot D + 3600\,\text{Hour} + 60\,\text{Minute} + \text{Second} - 3600\,\text{UTC Offset}$$$$\text{where}\quad \left\{ \begin{aligned} D &= \text{days from } 1970\text{-}01\text{-}01 \text{ to the chosen date} \\ \text{date} &= \left(\text{Year},\ \text{Month},\ \text{Day}\right) \end{aligned} \right.$$
Bir tarih ve saati gün, saat, dakika, saniye ve UTC fark düzeltmesine ayıran şema
Formül gün, saat, dakika ve saniyeleri toplar, ardından UTC farkını çıkarır.

Örnek hesaplama

+9 farkıyla 2025-06-15 00:00:00 için: daysSinceEpoch = 20254, dolayısıyla \(\text{localSeconds} = 20254 \times 86400 = 1\,749\,945\,600\). Bundan \(9 \times 3600 = 32\,400\) çıkarıldığında UNIX zamanı 1.749.913.200 olur; bu da 2025-06-14 15:00:00 UTC'ye karşılık gelir.

Sıkça sorulan sorular

Pozitif bir farkta timestamp neden beklediğimden küçük çıkıyor? Çünkü UTC'nin ilerisindeki bir yerel saat, daha erken bir UTC anına karşılık gelir; bu nedenle UNIX değeri, aynı duvar saatinin UTC olarak okunmuş halinden daha düşüktür.

1970 öncesi tarihleri destekliyor mu? Evet — sonuç yalnızca negatif olur. 1969-12-31 23:59:59 UTC değeri -1'dir.

Artık saniyeler dahil mi? Hayır. Her günün tam olarak 86.400 saniye olduğu standart POSIX tanımı izlenir.

Son güncelleme: