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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM