«

PHP怎么将毫秒级时间戳转为可读时间格式

时间:2024-7-22 09:27     作者:韩俊     分类: PHP


这篇文章主要介绍了PHP怎么将毫秒级时间戳转为可读时间格式的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇PHP怎么将毫秒级时间戳转为可读时间格式文章都会有所收获,下面我们一起来看看吧。

一、PHP 中毫秒时间戳的获取

在 PHP 中获取毫秒时间戳有许多种方法,其中一种比较通用的方法是使用

microtime()
函数获取毫秒时间戳,其返回的时间是以“秒.毫秒”为单位的浮点数。因此,我们需要对返回值进行处理,以获取完整的毫秒级时间戳。

代码示例:

function getMillisecond() {
    list($t1, $t2) = explode(' ', microtime());
    return (float)sprintf('%.0f', (floatval($t1) + floatval($t2)) * 1000);
}

这段代码将当前时间以秒.毫秒的格式进行返回,并将其转化为完整的毫秒级时间戳。

二、毫秒时间戳转化为日期时间

有了毫秒级时间戳,我们就可以将其转化为可读格式的日期时间。在 PHP 中,我们可以使用

date()
函数以及毫秒级时间戳(或以秒计算的时间戳)来格式化日期。

代码示例:

function msToTime($ms) {
    $sec = intval($ms/1000);
    $ms = $ms%1000;
    return date('Y-m-d H:i:s', time()-$sec).sprintf('.%03d', $ms);
}

该函数将毫秒级时间戳转化为人们可读的日期时间格式。其中,我们首先将毫秒级时间戳转化为秒级时间戳,然后使用

date()
函数格式化时间戳,并将微秒部分添加到输出结果中。

三、完整代码实例

下面是一个完整的示例代码,将毫秒级时间戳转化为可读的日期时间格式。

function getMillisecond() {
    list($t1, $t2) = explode(' ', microtime());
    return (float)sprintf('%.0f', (floatval($t1) + floatval($t2)) * 1000);
}

function msToTime($ms) {
    $sec = intval($ms/1000);
    $ms = $ms%1000;
    return date('Y-m-d H:i:s', time()-$sec).sprintf('.%03d', $ms);
}

$ms = getMillisecond();
echo $ms . "
";
echo msToTime($ms);

该代码的输出为:

1579670436322
2020-01-22 13:07:16.322

标签: php php教程

热门推荐