解决JS与PHP时间戳位数不一致导致计算错误

作者:橙子时间:2026-10-28 12:34:08浏览:167

PHP输出的时间戳通常为10位秒级,而JavaScript的Date.getTime()返回13位毫秒级。两者直接计算会导致结果偏差。本文通过示例代码展示如何在JS中统一时间格式,确保前后端时间差值计算准确。

JS与PHP时间戳位数差异分析

由PHP传入JS处理的时间戳我说怎么老是对不上号呢,原来JS时间戳为13位,包含3位毫秒的,而PHP只有10位不包含毫秒的。

时间差计算实现示例


var nowtime = (new Date).getTime();/*当前时间戳*/ 
/*转换时间,计算差值*/ 
function comptime(beginTime,endTime){ 
var secondNum = parseInt((endTime-beginTime*1000)/1000);//计算时间戳差值 

if(secondNum>=0&&secondNum<60){ 
return secondNum+'秒前'; 
} 
else if (secondNum>=60&&secondNum<3600){ 
var nTime=parseInt(secondNum/60); 
return nTime+'分钟前'; 
} 
else if (secondNum>=3600&&secondNum<3600*24){ 
var nTime=parseInt(secondNum/3600); 
return nTime+'小时前'; 
} 
else{ 
var nTime = parseInt(secondNum/86400); 
return nTime+'天前'; 
} 
} 
t = comptime(timestamp,nowtime);//timestamp为PHP通过ajax回传的时间戳
作者最新文章