毫秒级时间

Posted 飞鹰学习

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了毫秒级时间相关的知识,希望对你有一定的参考价值。

<?php

/*

 * Created on 2018-03-12  毫秒级时间

 * Programmer : andy

 * Develop a project PHP - mysql - Apache

 */

namespace Common\Model;

 

class MsecTimeModel

{

    /**

     * desc 返回当前的毫秒时间戳

     */

    function getMsectime() {

        list($msec, $sec) = explode(‘ ‘, microtime());

        $msectime =  (float)sprintf(‘%.0f‘, (floatval($msec) + floatval($sec)) * 1000000);

        return $msectime;

 

    }

    /**

     *desc 时间戳 转   日期格式 : 精确到毫秒,x代表毫秒

     */

    function getMicrotimeFormat($time)

    {

        $time=$time*0.000001;

        if(strstr($time,‘.‘)){

            sprintf("%01.6f",$time); //小数点。不足6位补0

            list($usec, $sec) = explode(".",$time);

            $sec = str_pad($sec,6,"0",STR_PAD_RIGHT); //不足6位。右边补0

        }else{

            $usec = $time;

            $sec = "000000";

        }

        $date = date("Y-m-d H:i:s.x",$usec);

        return str_replace(‘x‘, $sec, $date);

    }

 

    /**

     * @desc 时间日期转时间戳格式,精确到毫秒

     */

    function getDataFormat($time)

    {

        list($usec, $sec) = explode(".", $time);

        $date = strtotime($usec);

        $return_data = str_pad($date.$sec,13,"0",STR_PAD_RIGHT); //不足13位。右边补0

        return $return_data;

    }

    /**

     *desc 获取当前时间 精确到秒

     */

    function getCurrenMsecTime()

    {

        return $this->getMicrotimeFormat($this->getMsectime());

    }

    /**

     *desc 时间毫秒级改为到秒

     */

    function getTimeByMsecTime($MsecTime)

    {

        $time=strtotime($MsecTime);

        if(empty($MsecTime) or $MsecTime==null or $time==0)

            return ‘0000-00-00 00:00:00‘;

        return date(‘Y-m-d H:i:s‘,$time);

    }

}

?>

 

以上是关于毫秒级时间的主要内容,如果未能解决你的问题,请参考以下文章

使用Swoole实现毫秒级定时任务

C++两种计时方式(windows平台,毫秒级&微秒级)

查询亿级数据毫秒级返回!Elasticsearch 是如何做到的?丨极客时间

shell脚本示例:计算毫秒级微秒级时间差

Python获取秒级时间戳与毫秒级时间戳

如何以毫秒为单位获取javaFX音频片段的长度[关闭]