🎯 获取高精度时间戳
2026/7/28大约 1 分钟
🎯 获取高精度时间戳
毫秒、微秒和纳秒接口返回 Unix 时间戳的不同单位,使用整数拼接计算,避免大整数经浮点运算损失低位。
底层 microtime() 只提供微秒精度,纳秒接口为微秒值乘以 1000,末三位为零,并不代表纳秒级测量精度。
毫秒接口截取到毫秒,不向下一毫秒四舍五入。结果超出当前平台 PHP_INT_MAX 时抛出 OverflowException,建议使用 64 位 PHP。
提示
生成订单号或者与其他编程语言对接时可能会用到
getTimestamp()
获取秒级的时间戳,可用系统函数time()代替
参数
无
返回值
当前秒级的时间戳
示例代码
/* 获取当前秒级的时间戳 */
TimeHelper::getTimestamp();
// 1698762509getMilliTimestamp()
获取毫秒级的时间戳
参数
无
返回值
当前毫秒级的时间戳
示例代码
/* 获取当前毫秒级的时间戳 */
TimeHelper::getMilliTimestamp();
// 1698762509279getMicroTimestamp()
获取微秒级的时间戳
参数
无
返回值
当前微秒级的时间戳
示例代码
/* 获取当前微秒级的时间戳 */
TimeHelper::getMicroTimestamp();
// 1698762509279645getNanoTimestamp()
获取纳秒级的时间戳
参数
无
返回值
以纳秒为单位的当前 Unix 时间戳,实际为微秒精度
示例代码
/* 获取当前纳秒级的时间戳 */
TimeHelper::getNanoTimestamp();
// 1698762509279645000