日期时间 → 时间戳
批量时间戳转换
每行输入一个时间戳(支持秒或毫秒级)
转换工具
教学与参考
什么是 Unix 时间戳?
Unix 时间戳(Unix Timestamp)是从 1970 年 1 月 1 日 00:00:00 UTC(称为 Unix 纪元,Unix Epoch)到某一时刻之间所经过的秒数。它是计算机系统中最常用的时间表示方式之一。
时间戳的特点
- 与时区无关:Unix 时间戳是一个绝对值,不受时区影响,方便跨时区通信。
- 整数表示:便于存储和比较,在数据库中广泛使用。
- 秒级与毫秒级:标准 Unix 时间戳为秒级(10 位数),JavaScript 等语言常使用毫秒级(13 位数)。
常见编程语言获取时间戳
- JavaScript:
Math.floor(Date.now() / 1000) - Python:
import time; int(time.time()) - Java:
System.currentTimeMillis() / 1000 - PHP:
time() - Go:
time.Now().Unix() - MySQL:
SELECT UNIX_TIMESTAMP()
2038 年问题
由于许多系统使用 32 位整数存储 Unix 时间戳,最大值为 2,147,483,647,对应 2038 年 1 月 19 日 03:14:07 UTC。超过此时间后将发生整数溢出。现代系统已逐步迁移至 64 位时间戳以解决此问题。
常见问题
为什么转换结果差了 8 小时?
Unix 时间戳本身以 UTC 为基准。如果你在 UTC+8 时区(如北京、台北),将时间戳转换为本地时间时需要加 8 小时。本工具默认使用你的浏览器时区,也可手动切换。
10 位和 13 位时间戳有什么区别?
10 位数是秒级时间戳(如 1700000000),13 位数是毫秒级时间戳(如 1700000000000)。JavaScript 的 Date.now() 返回毫秒,而 Unix 系统的 time() 返回秒。了解更多 →
时间戳可以是负数吗?
可以。负数时间戳表示 1970 年 1 月 1 日之前的时间。例如 -86400 代表 1969 年 12 月 31 日 00:00:00 UTC。
什么是 2038 年问题?
32 位系统的 Unix 时间戳最大值为 2,147,483,647,对应 2038 年 1 月 19 日。超过后将溢出。现代 64 位系统已解决此问题。阅读完整指南 →