You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

使用API开发交易展示页面,如何将时间戳格式化为MM-DD-YYYY?

解决毫秒时间戳转MM-DD-YYYY格式日期的问题

首先注意到你给出的时间戳1520348611194毫秒级的(13位数字),不同编程语言的处理逻辑略有差异,下面给你几种常见开发场景的解决方案:

JavaScript(前端/Node.js)方案

如果是在页面前端或者Node.js环境中处理,你可以这样写:

const timestamp = 1520348611194;
const date = new Date(timestamp);

// 处理月份:JS的月份是0-11,所以要+1,再补零确保两位
const month = String(date.getMonth() + 1).padStart(2, '0');
// 处理日期:补零确保两位
const day = String(date.getDate()).padStart(2, '0');
// 提取四位年份
const year = date.getFullYear();

// 拼接成目标格式
const formattedDate = `${month}-${day}-${year}`;
console.log(formattedDate); // 输出:03-06-2018

小提示:padStart(2, '0')是为了避免出现类似3-6-2018这种不规范的格式,确保月份和日期始终是两位数字。

PHP 后端方案

如果是在PHP环境中处理,需要先把毫秒时间戳转成秒级(PHP的时间函数默认用秒级时间戳):

$timestamp = 1520348611194;
// 除以1000转成秒级时间戳,再用date函数格式化
$formattedDate = date("m-d-Y", $timestamp / 1000);
echo $formattedDate; // 输出:03-06-2018

这里date()函数的参数"m-d-Y"正好对应MM-DD-YYYY的格式要求,非常省心。

Python 方案

如果用Python处理,逻辑类似,先转成datetime对象再格式化:

import datetime

timestamp = 1520348611194
# 转成秒级时间戳后生成datetime对象
date_obj = datetime.datetime.fromtimestamp(timestamp / 1000)
# 按照指定格式输出
formatted_date = date_obj.strftime("%m-%d-%Y")
print(formatted_date) # 输出:03-06-2018

strftime("%m-%d-%Y")里的%m对应两位月份,%d对应两位日期,%Y对应四位年份,完美匹配你的需求。

内容的提问来源于stack exchange,提问作者Shaun Nicholson

火山引擎 最新活动