Unix 時間戳轉換器
專業在線 Unix 時間戳轉換工具。支持秒與毫秒互轉,提供多時區日期格式化。包含 2038 年問題科普與 Y2K 彩蛋,開發者必備的 Epoch Time 轉換器。
關於 Unix 時間戳
什麼是 Unix 時間戳?
Unix 時間戳(Unix Timestamp),也稱為 Epoch Time 或 POSIX 時間,是一種記錄時間的方式。它定義為從 1970年1月1日 00:00:00 UTC(協調世界時)開始所經過的秒數,不考慮閏秒。
為什麼使用時間戳?
- 全球統一:無論你在地球的哪個角落,同一時刻的 Unix 時間戳都是相同的。這解決了跨時區資料存儲和同步的難題。
- 存儲高效:相比於字串(如 "2023-12-25"),整數類型的時間戳在資料庫中佔用空間更小,索引效率更高。
- 便於計算:計算兩個時間點之間的差值只需簡單的減法運算。
秒 (s) vs 毫秒 (ms)
- 秒 (10位):傳統的 Unix 時間戳通常是 10 位數字(例如 1672531200)。PHP、MySQL、Linux 系統預設使用秒。
- 毫秒 (13位):現代 Web 開發(JavaScript, Java)通常使用 13 位數字,包含了毫秒級的精度(例如 1672531200000)。
- 本工具會自動檢測您輸入的是秒還是毫秒,您也可以手動切換模式。
⚠️ 2038 年問題 (Y2K38)
在舊的 32 位元系統中,時間戳是用 "32位元有符號整數" 存儲的。這個數值的最大上限是 2147483647,對應的時間是 2038年1月19日 03:14:07 UTC。超過這個時間,數值會溢出變成負數,系統可能會誤認為是 1901 年。現代 64 位元系統已完美解決了這個問題。
🥚 歷史彩蛋:千年蟲 (Y2K)
大家經常把 "2038年問題" 和著名的 "千年蟲 (Y2K Bug)" 混淆。
- Y2K 是因為早期程式設計師為了節省昂貴的存儲空間,只用兩位數字存儲年份(如 99 代表 1999年)。當 2000 年到來時,電腦以為回到了 1900 年,導致全球金融和交通系統面臨癱瘓風險。
- 有趣的是:Unix 時間戳從設計之初就完美避開了 Y2K 問題。但 Unix 工程師們沒想到 32 位元整數的盡頭(2038年)轉眼就要到了!