实时 Unix 时间戳

获取当前的 Unix Timestamp · 秒级 / 毫秒级 · 一键复制

当前 Unix 时间戳

0

当前时间详细信息

Unix 时间戳(秒) -
Unix 时间戳(毫秒) -
UTC 时间 -
本地时间 -
ISO 8601 格式 -

各编程语言获取当前时间戳

JavaScript

JavaScript // 秒级时间戳 const timestamp = Math.floor(Date.now() / 1000); console.log(timestamp); // 毫秒级时间戳 const timestampMs = Date.now(); console.log(timestampMs);

Python

Python import time # 秒级时间戳 timestamp = int(time.time()) print(timestamp) # 毫秒级时间戳 timestamp_ms = int(time.time() * 1000) print(timestamp_ms)

PHP

PHP // 秒级时间戳 $timestamp = time(); echo $timestamp; // 毫秒级时间戳 $timestampMs = round(microtime(true) * 1000); echo $timestampMs;

Go

Go package main import ( "fmt" "time" ) func main() { // 秒级时间戳 timestamp := time.Now().Unix() fmt.Println(timestamp) // 毫秒级时间戳 timestampMs := time.Now().UnixMilli() fmt.Println(timestampMs) }

Java

Java // 秒级时间戳 long timestamp = System.currentTimeMillis() / 1000; System.out.println(timestamp); // 毫秒级时间戳 long timestampMs = System.currentTimeMillis(); System.out.println(timestampMs); // Java 8+ Instant import java.time.Instant; long epochSecond = Instant.now().getEpochSecond(); System.out.println(epochSecond);

MySQL

MySQL -- 获取当前的 Unix 时间戳(秒) SELECT UNIX_TIMESTAMP(); -- 获取指定日期的时间戳 SELECT UNIX_TIMESTAMP('2025-01-01 00:00:00'); -- 时间戳转换为日期时间 SELECT FROM_UNIXTIME(1735689600);

什么是 Unix 时间戳?

Unix 时间戳(Unix Timestamp)是一种用来追踪时间的方式,它表示从 1970 年 1 月 1 日 00:00:00 UTC(又称为 Unix 纪元,Unix Epoch)到指定时刻之间所经过的秒数。这个数值是一个不断递增的整数,不受时区影响,因此在全球各地的计算机系统中广泛使用。

Unix 纪元的起源

Unix 纪元起始于 1970 年 1 月 1 日 00:00:00 UTC。这个时间点被选为计算的起始零点,在此之前的时间会以负数表示。例如,1969 年 12 月 31 日 23:59:59 UTC 对应的时间戳为 -1。

秒级与毫秒级时间戳

标准的 Unix 时间戳为秒级,通常是一个 10 位数字(例如 1700000000)。但在某些编程语言和系统中(如 JavaScript),使用的是毫秒级时间戳,即 13 位数字(例如 1700000000000)。两者之间的换算很简单:毫秒级 = 秒级 × 1000。

时间戳的优势

常见问题 FAQ

什么是 Unix 纪元(Epoch)?

Unix 纪元是指 1970 年 1 月 1 日 00:00:00 UTC 这个时间点。所有的 Unix 时间戳都是以此为基准,计算自该时刻起所经过的秒数。之所以选择这个时间点,是因为 Unix 操作系统在 1970 年代初期开发时,工程师们选定了一个便于计算的近期整数时间作为起点。在 Unix 纪元之前的时间,其时间戳为负数。

当前的时间戳大约是多少位数?

当前(2025-2026 年)的 Unix 时间戳为 10 位数字,大约在 17 亿左右(例如 1742500000)。秒级时间戳自 2001 年 9 月 9 日起进入 10 位数,预计到 2286 年 11 月 20 日才会达到 11 位数(10,000,000,000)。如果是毫秒级时间戳,则为 13 位数字。

为什么 JavaScript 的时间戳是 13 位?

JavaScript 的 Date.now()new Date().getTime() 返回的是毫秒级时间戳(13 位数字),而不是传统的秒级时间戳(10 位)。这是因为 JavaScript 的 Date 对象设计时就以毫秒为最小单位,以提供更高的精度。若需要秒级时间戳,只需除以 1000 并取整:Math.floor(Date.now() / 1000)

2038 年问题是什么?

许多较旧的计算机系统使用 32 位有符号整数来存储 Unix 时间戳,其最大值为 2,147,483,647,对应的时间为 2038 年 1 月 19 日 03:14:07 UTC。超过此时间后,32 位整数将发生溢出,可能导致时间被错误地解读为 1901 年的日期,进而引发系统故障。这被称为「Y2K38 问题」或「Unix 千年虫」。现代系统已逐步迁移至 64 位时间戳,可以表示到数千亿年后的时间,彻底解决此问题。