JavaScript与PHP时间戳转换及相对时间计算实现

作者:清欢

时间:2026-10-27

浏览:149

本文详解JavaScript与PHP时间戳的差异,指出JS为13位毫秒级而PHP为10位秒级。提供完整的JavaScript函数,实现将PHP回传的10位时间戳转换为前端友好的相对时间格式(秒前、分钟前、小时前、天前),并包含具体的代码示例与调用方法。

文章目录

JS与PHP时间戳差异说明

需要特别注意,JavaScript生成的时间戳通常为13位(毫秒级),而PHP生成的时间戳通常为10位(秒级)。在进行两者交互时,必须进行相应的单位转换。


弹出结果验证:alert(t);

时间转换与相对时间计算代码

具体实现代码如下:

 
获取当前系统时间戳:var nowtime = (new Date).getTime();/*当前时间戳*/
定义一个用于计算并格式化时间差的函数:/*转换时间,计算差值*/
function comptime(beginTime,endTime){
首先计算两个时间戳之间的秒数差值,注意将JS的13位时间戳转换为秒:var secondNum = parseInt((endTime-beginTime*1000)/1000);//计算时间戳差值
判断差值是否在60秒以内:if(secondNum>=0&&secondNum<60){
返回“XX秒前”的格式:return secondNum+'秒前';
} 
} else if (secondNum>=60&&secondNum<3600){
计算分钟数:var nTime=parseInt(secondNum/60);
返回“XX分钟前”的格式:return nTime+'分钟前';
} 
} else if (secondNum>=3600&&secondNum<3600*24){
计算小时数:var nTime=parseInt(secondNum/3600);
返回“XX小时前”的格式:return nTime+'小时前';
} 
} else{
计算天数:var nTime = parseInt(secondNum/86400);
返回“XX天前”的格式:return nTime+'天前';
} 
} 
t = comptime("1324362556",nowtime);//timestamp为PHP通过ajax回传的时间戳
调用示例:假设通过Ajax从PHP获取了一个10位的时间戳,传入函数进行计算:t = comptime("1324362556",nowtime);//timestamp为PHP通过ajax回传的时间戳

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章