时间戳转换大师
免费在线 Unix 时间戳转换工具,支持时间戳与日期时间双向互转、秒/毫秒自动识别、多时区切换,并提供 JavaScript、Python、Java、Go、PHP、C#、Rust、MySQL 等多种编程语言的时间戳代码示例。
时间戳 → 日期时间
日期时间 → 时间戳
按所选时区解析
多语言代码示例
涵盖 8 种主流语言,一键复制即用
// 获取当前 Unix 时间戳(秒)
const tsSeconds = Math.floor(Date.now() / 1000);
// 获取当前时间戳(毫秒)
const tsMillis = Date.now();
console.log(tsSeconds, tsMillis); // 时间戳(秒)转日期时间
const ts = 1690000000;
const date = new Date(ts * 1000);
// 本地时间字符串
console.log(date.toLocaleString());
// ISO 8601 (UTC)
console.log(date.toISOString()); // 日期时间转时间戳(秒)
const date = new Date('2023-07-22 06:26:40');
const ts = Math.floor(date.getTime() / 1000);
console.log(ts); // 时间戳运算:加 1 天
const ts = 1690000000;
const oneDay = 24 * 60 * 60;
const tomorrow = ts + oneDay;
console.log(tomorrow); import time
# 获取当前时间戳(秒)
ts_seconds = int(time.time())
# 获取当前时间戳(毫秒)
ts_millis = int(time.time() * 1000)
print(ts_seconds, ts_millis) from datetime import datetime
# 时间戳(秒)转日期时间
ts = 1690000000
dt = datetime.fromtimestamp(ts)
print(dt.strftime('%Y-%m-%d %H:%M:%S')) from datetime import datetime
# 日期时间转时间戳(秒)
dt = datetime.strptime('2023-07-22 06:26:40', '%Y-%m-%d %H:%M:%S')
ts = int(dt.timestamp())
print(ts) from datetime import datetime, timedelta
# 时间戳运算:加 1 天
ts = 1690000000
dt = datetime.fromtimestamp(ts) + timedelta(days=1)
print(int(dt.timestamp())) // 获取当前时间戳(毫秒)
long tsMillis = System.currentTimeMillis();
// 获取当前时间戳(秒)
long tsSeconds = Instant.now().getEpochSecond();
System.out.println(tsSeconds + " " + tsMillis); import java.time.*;
import java.time.format.DateTimeFormatter;
// 时间戳(秒)转日期时间
long ts = 1690000000L;
LocalDateTime dt = LocalDateTime.ofInstant(
Instant.ofEpochSecond(ts), ZoneId.systemDefault());
System.out.println(dt.format(
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"))); import java.time.*;
import java.time.format.DateTimeFormatter;
// 日期时间转时间戳(秒)
LocalDateTime dt = LocalDateTime.parse("2023-07-22 06:26:40",
DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
long ts = dt.atZone(ZoneId.systemDefault()).toEpochSecond();
System.out.println(ts); import java.time.Instant;
import java.time.temporal.ChronoUnit;
// 时间戳运算:加 1 天
long ts = 1690000000L;
long tomorrow = Instant.ofEpochSecond(ts)
.plus(1, ChronoUnit.DAYS).getEpochSecond();
System.out.println(tomorrow); package main
import (
"fmt"
"time"
)
func main() {
// 当前时间戳(秒)
tsSeconds := time.Now().Unix()
// 当前时间戳(毫秒)
tsMillis := time.Now().UnixMilli()
fmt.Println(tsSeconds, tsMillis)
} package main
import (
"fmt"
"time"
)
func main() {
// 时间戳(秒)转日期时间
var ts int64 = 1690000000
t := time.Unix(ts, 0)
fmt.Println(t.Format("2006-01-02 15:04:05"))
} package main
import (
"fmt"
"time"
)
func main() {
// 日期时间转时间戳(秒)
t, _ := time.ParseInLocation("2006-01-02 15:04:05",
"2023-07-22 06:26:40", time.Local)
fmt.Println(t.Unix())
} package main
import (
"fmt"
"time"
)
func main() {
// 时间戳运算:加 1 天
var ts int64 = 1690000000
tomorrow := time.Unix(ts, 0).AddDate(0, 0, 1).Unix()
fmt.Println(tomorrow)
} <?php
// 获取当前时间戳(秒)
$tsSeconds = time();
// 获取当前时间戳(毫秒)
$tsMillis = (int)(microtime(true) * 1000);
echo $tsSeconds . ' ' . $tsMillis; <?php
// 时间戳(秒)转日期时间
$ts = 1690000000;
$date = date('Y-m-d H:i:s', $ts);
echo $date; <?php
// 日期时间转时间戳(秒)
$ts = strtotime('2023-07-22 06:26:40');
echo $ts; <?php
// 时间戳运算:加 1 天
$ts = 1690000000;
$tomorrow = strtotime('+1 day', $ts);
echo $tomorrow; // 获取当前时间戳(秒)
long tsSeconds = DateTimeOffset.UtcNow.ToUnixTimeSeconds();
// 获取当前时间戳(毫秒)
long tsMillis = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds();
Console.WriteLine($"{tsSeconds} {tsMillis}"); // 时间戳(秒)转日期时间
long ts = 1690000000;
DateTime dt = DateTimeOffset.FromUnixTimeSeconds(ts)
.LocalDateTime;
Console.WriteLine(dt.ToString("yyyy-MM-dd HH:mm:ss")); // 日期时间转时间戳(秒)
DateTime dt = DateTime.Parse("2023-07-22 06:26:40");
long ts = new DateTimeOffset(dt).ToUnixTimeSeconds();
Console.WriteLine(ts); // 时间戳运算:加 1 天
long ts = 1690000000;
long tomorrow = DateTimeOffset.FromUnixTimeSeconds(ts)
.AddDays(1).ToUnixTimeSeconds();
Console.WriteLine(tomorrow); use std::time::{SystemTime, UNIX_EPOCH};
fn main() {
let now = SystemTime::now()
.duration_since(UNIX_EPOCH)
.unwrap();
// 秒 / 毫秒
println!("{} {}", now.as_secs(), now.as_millis());
} // 需依赖 chrono = "0.4"
use chrono::{DateTime, Local, TimeZone};
fn main() {
let ts = 1690000000;
let dt: DateTime<Local> = Local.timestamp_opt(ts, 0).unwrap();
println!("{}", dt.format("%Y-%m-%d %H:%M:%S"));
} // 需依赖 chrono = "0.4"
use chrono::{NaiveDateTime, Local, TimeZone};
fn main() {
let dt = NaiveDateTime::parse_from_str(
"2023-07-22 06:26:40", "%Y-%m-%d %H:%M:%S").unwrap();
let ts = Local.from_local_datetime(&dt).unwrap().timestamp();
println!("{}", ts);
} // 需依赖 chrono = "0.4"
use chrono::{Duration, Local, TimeZone};
fn main() {
let ts = 1690000000;
let dt = Local.timestamp_opt(ts, 0).unwrap()
+ Duration::days(1);
println!("{}", dt.timestamp());
} -- 获取当前时间戳(秒)
SELECT UNIX_TIMESTAMP();
-- 获取当前时间戳(毫秒)
SELECT ROUND(UNIX_TIMESTAMP(NOW(3)) * 1000); -- 时间戳(秒)转日期时间
SELECT FROM_UNIXTIME(1690000000);
-- 自定义格式
SELECT FROM_UNIXTIME(1690000000, '%Y-%m-%d %H:%i:%s'); -- 日期时间转时间戳(秒)
SELECT UNIX_TIMESTAMP('2023-07-22 06:26:40'); -- 时间戳运算:加 1 天
SELECT UNIX_TIMESTAMP(
DATE_ADD(FROM_UNIXTIME(1690000000), INTERVAL 1 DAY)
); 更多时间工具
按需选择,覆盖日常开发场景
批量转换
一次粘贴多行时间戳或日期,批量互转并导出结果。
立即使用 →时间差计算
计算两个时间点之间的天、时、分、秒差值。
立即使用 →倒计时
设置目标时间,实时显示剩余倒计时。
立即使用 →世界时钟
同时查看全球多个城市的当前时间与时区。
立即使用 →Cron 表达式
解析并生成 Cron 定时表达式,预览下次执行时间。
立即使用 →日期格式化
在多种日期格式之间自由转换,支持自定义模板。
立即使用 →时区转换
把某一时刻在任意两个时区之间换算,附时差与偏移说明。
立即使用 →日期计算
对日期做加减推算,或计算两个日期之间的精确间隔。
立即使用 →秒表 / 计时器
高精度秒表计圈,或设置倒计时到点提醒。
立即使用 →常见问题
关于时间戳,你可能想知道的
什么是 Unix 时间戳?
Unix 时间戳(Unix Timestamp)是指从协调世界时(UTC)1970 年 1 月 1 日 00:00:00 起,到当前时刻所经过的秒数(不含闰秒)。它是一个与时区无关的整数,被广泛用于计算机系统中存储和传递时间。
秒级时间戳和毫秒级时间戳有什么区别?
秒级时间戳精确到秒,通常为 10 位数字(如 1690000000);毫秒级时间戳精确到毫秒,通常为 13 位数字(如 1690000000000)。JavaScript 的 Date.now() 返回毫秒级,而多数后端与数据库默认使用秒级。本工具会根据数字位数自动识别。
什么是 2038 年问题?
在使用 32 位有符号整数存储时间戳的系统中,可表示的最大时间为 2038 年 1 月 19 日 03:14:07 (UTC)。超过该时刻后数值会溢出,导致时间回绕到 1901 年。解决方案是改用 64 位整数存储时间戳,现代系统大多已支持。
时间戳会随时区变化吗?
不会。时间戳本身基于 UTC,是一个全球统一的绝对时刻,不受时区影响。时区只在把时间戳「显示」为具体的年月日时分秒时才起作用——同一个时间戳在不同时区会呈现为不同的本地时间。
如何在代码中获取当前时间戳?
不同语言写法不同:JavaScript 用 Math.floor(Date.now()/1000),Python 用 int(time.time()),Java 用 System.currentTimeMillis()/1000,Go 用 time.Now().Unix()。本站「代码示例」区块提供了多种语言的完整片段,可一键复制。