php获取毫秒级别时间戳及转换日期

代码如下:

public function index()
{
    $msectime = $this->getMsecTime();
    $mescdate = $this->getMsecToMescdate($msectime);
    $msectime2 = $this->getDateToMesc($mescdate);
    echo $msectime."<br />";
    echo $mescdate."<br />";
    echo $msectime2."<br />";
}

/**
 * 获取毫秒级别的时间戳
 */
public function getMsecTime()
{
    list($msec, $sec) = explode(' ', microtime());
    $msectime =  (float)sprintf('%.0f', (floatval($msec) + floatval($sec)) * 1000);
    return $msectime;
}

/**
 * 毫秒转日期
 */
public function getMsecToMescdate($msectime)
{
    $msectime = $msectime * 0.001;
    if(strstr($msectime,'.')){
        sprintf("%01.3f",$msectime);
        list($usec, $sec) = explode(".",$msectime);
        $sec = str_pad($sec,3,"0",STR_PAD_RIGHT);
    }else{
        $usec = $msectime;
        $sec = "000";
    }
    $date = date("Y-m-d H:i:s.x",$usec);
    return $mescdate = str_replace('x', $sec, $date);
}

/**
 * 日期转毫秒
 */
public function getDateToMesc($mescdate)
{
    list($usec, $sec) = explode(".", $mescdate);
    $date = strtotime($usec);
    $return_data = str_pad($date.$sec,13,"0",STR_PAD_RIGHT);
    return $msectime = $return_data;
}

效果如图:

原文链接:https://blog.csdn.net/weixin_42330073/java/article/details/82682785

posted @   八戒vs  阅读(6979)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示