線上 UTC 時間戳記 timestamp

線上 UTC 時間戳記 timestamp

 UTC Timestamp更新中 ·
--:--:--.000UTC
--------- ---
常用格式點右邊綠色按鈕,或直接點數值
時間換算貼 Unix 秒數或 ISO 字串都可以
10 位數會當成秒,13 位數當成毫秒,16 和 19 位數則是微秒和奈秒。
各語言怎麼取現在時間點一下程式碼就複製
語言ISO 8601 字串Unix 時間
JavaScriptnew Date().toISOString()Date.now()
Pythondatetime.now(timezone.utc).isoformat()int(time.time())
Gotime.Now().UTC().Format(time.RFC3339)time.Now().Unix()
JavaInstant.now().toString()Instant.now().getEpochSecond()
C#DateTimeOffset.UtcNow.ToString("o")DateTimeOffset.UtcNow.ToUnixTimeSeconds()
PHPgmdate('c')time()
Rust (chrono)Utc::now().to_rfc3339()Utc::now().timestamp()
RubyTime.now.utc.iso8601Time.now.to_i
Shelldate -u +%Y-%m-%dT%H:%M:%SZdate +%s
PostgreSQLSELECT now() AT TIME ZONE 'UTC';SELECT extract(epoch FROM now());
MySQLSELECT UTC_TIMESTAMP();SELECT UNIX_TIMESTAMP();
把 Unix 秒數轉回時間手邊有個數字,想知道那是什麼時候
環境指令
Linuxdate -u -d @1784889000
macOSdate -u -r 1784889000
Pythondatetime.fromtimestamp(1784889000, timezone.utc)
JavaScriptnew Date(1784889000 * 1000).toISOString()
PostgreSQLSELECT to_timestamp(1784889000);
格式符號對照表strftime 與 Go layout
用途strftimeGo layout範例
四位年%Y20062026
月(補零)%m0107
日(補零)%d0224
24 小時制%H1508
%M0430
%S0500
小數秒%f(微秒).000.482
一年第幾天%j205
時區位移%z-0700+0800
時區縮寫%ZMSTCST
Unix 秒%s(GNU).Unix()1784889000
星期簡寫%aMonFri
Go 是拿這個固定時間當範本:2006-01-02 15:04:05 -0700 MST,數字剛好照 1 到 7 排下來,記起來不難。
秒數換算設快取、TTL、過期時間的時候會用到
長度毫秒
1 分鐘6060,000
1 小時3,6003,600,000
1 天86,40086,400,000
1 週604,800604,800,000
30 天2,592,0002,592,000,000
365 天31,536,00031,536,000,000
第 10 億秒2001-09-09T01:46:40Z
2,147,483,6472038-01-19T03:14:07Z,32 位元存得下的最後一秒
容易踩到的雷
  • 秒和毫秒搞混。10 位數是秒,13 位數是毫秒,差了 1000 倍。弄錯的話日期不是跑到 1970 年,就是飛到五萬年後。
  • 資料庫直接存本地時間。一律存 UTC,要顯示的時候才換算時區。PostgreSQL 請用 timestamptz,不要用 timestamp
  • +08:00 當成時區。那只是時差,不是時區。只有 Asia/Taipei 這種名稱才知道日光節約和歷年規則怎麼變。排程和提醒一定要存這種名稱。
  • 用系統時鐘算執行時間。NTP 校時的時候,時間可能會往回跳。要量長度請改用單調時鐘:performance.now()time.monotonic()time.Since()
  • 以為 ISO 8601 就是 RFC 3339。ISO 8601 能接受的寫法很多(像 20260724T083000Z),RFC 3339 只是其中比較嚴格的一小塊。API 統一用 RFC 3339 最保險。
  • JS 的 getMonth() 從 0 開始getDate() 卻從 1 開始。還有 new Date("2026-07-24") 會當成 UTC,換成 new Date("2026/07/24") 就變本地時間。
  • 認定一天就是 86400 秒。有日光節約的地方,一天可能只有 23 小時,也可能有 25 小時。要跨日請用日期函式算,不要自己加減秒數。
  • 拿 Unix 時間做精密計時。它裡面根本沒有閏秒的位置,閏秒會被系統抹掉或跳過,精度要求高的場合別用。
時間是抓你電腦上的時鐘,和標準時間可能差個幾百毫秒。

張貼留言

0 留言