一、time、date 和 microtime函数

time----返回当前的 Unix 时间戳

date----格式化一个本地时间/日期

microtime----返回当前的 Unix 时间戳和微秒数

二、三者的区别

1.time() 函数

time() 函数返回的是从 Unix 纪元(格林威治1970年1月1日00:00:00)到当前时间的秒数,如下

1

2

3

4

5

<?php

  echo time();

--------------------

输出结果

1546501413

2.date() 函数

date() 返回将整数 timestamp 按照给定的格式字符串而产生的字符串,如下

1

2

3

4

5

6

<?php

   echo date("Y-m-d H:i:s",time());

---------------------------------------

输出结果

2019-01-03 07:44:57

3.microtime() 函数

microtime() 返回当前 Unix 时间戳和微秒数。如果调用时不带可选参数,该函数以 "msec sec" 的格式返回一个字符串,其中

sec 是从 Unix 纪元(格林威治1970年1月1日00:00:00)起到当前时间的秒数,msec 是微秒部分这一点需要注意下有的文章上写

的是毫秒可以参考 PHP 手册,字符串的两部分都是以秒为单位返回的。如果可选参数为 true,microtime(true),返回的值是  sec

+ msec 的和,保留四位小数,如下:

1

2

3

4

5

6

7

8

9

<?php

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

  echo $msec;

  echo "<br />";

  echo $sec;

---------------------------------------

输出结果

0.30716500<br />1546501702

   time() 函数多用于记录当前时间,date() 函数用于格式化一个时间戳,microtime() 函数可用于计算时间差,比如常用统计一个程序

的运行时间等

4.通过 microtime() 函数获取毫秒时间戳

#Example 01  获取时间差,毫秒级

1

2

3

4

5

6

7

8

9

10

11

12

13

14

<?php

   

   function get_subtraction() {

      $t1 = microtime(true);

      $t2 = microtime(true);

   

      echo (($t2 $t1)*1000).'ms';

   }

 get_subtraction();

---------------------------------------

输出结果:

0.0019073486328125ms

   #Example 02 返回时间戳的毫秒部分

1

2

3

4

5

6

7

8

9

10

11

12

13

<?php

  2

  function get_millisecond() {

  4    list($msec$sec) = explode(" ", microtime());

  5    $msec round($msec * 1000);

  6    echo $msec;

  7 }

  8

  9 get_millisecond();

------------------------------------------------------------

输出结果:

535

  #Example 03 返回当前 Unix 时间戳和微秒数(用秒的小数表示)浮点数表示,常用来计算代码执行时间

1

2

3

4

5

6

7

8

<?php

  2

  function microtime_float() {

  4    list($msec$sec) = explode(" ", microtime());

  5    echo (float)$msec + (float)$sec;

  6 }

  7

  8 microtime_float();

  上面这段代码的结果和 microtime(true) 相等

#Example 04 获取毫秒级别时间戳

1

2

3

4

5

6

7

8

9

10

11

12

<?php

  2

  3 list($msec$sec) = explode(" ", microtime());

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

  5

  echo $mesctime;

------------------------------------

输出结果:

1546509149102

floatval() 函数获取变量的浮点值,doubleval() 函数是它的别名,具体使用可以参考 PHP 手册

sprintf("%.0f",$num) 输出不包含小数部分的浮点数

time、date 和 microtime函数区别相关推荐

  1. mcrotime php_php时间函数time、date和microtime的区别 | 木凡博客

    time - 返回当前的 Unix 时间戳 date - 格式化一个本地时间/日期 microtime - 返回当前 Unix 时间戳和微秒数 二.三者的区别 ①.time()函数 time()返回自 ...

  2. PHP获取毫秒时间戳,利用microtime()函数

    PHP获取毫秒时间戳,利用microtime()函数 php本身没有提供返回毫秒数的函数,但提供了一个microtime()函数,借助此函数,可以很容易定义一个返回毫秒数的函数. php的毫秒是没有默 ...

  3. python时间函数报错_python3中datetime库,time库以及pandas中的时间函数区别与详解...

    1介绍datetime库之前 我们先比较下time库和datetime库的区别 先说下time 在 Python 文档里,time是归类在Generic Operating System Servic ...

  4. python获取系统时间函数_python3中datetime库,time库以及pandas中的时间函数区别与详解...

    1介绍datetime库之前 我们先比较下time库和datetime库的区别 先说下time 在 Python 文档里,time是归类在Generic Operating System Servic ...

  5. 函数模板和普通函数区别

    /***Copyright (c) 2018 Young Fan.All Right Reserved.*Filename: 2 函数模板和普通函数区别*Author: Young Fan*Date: ...

  6. php time 毫秒_PHP microtime()函数获取毫秒时间戳

    PHP获取毫秒时间戳,利用microtime()函数 php本身没有提供返回毫秒数的函数,但提供了一个microtime()函数,借助此函数,可以很容易定义一个返回毫秒数的函数. php的毫秒是没有默 ...

  7. php 获取毫秒函数,PHP实现获取毫秒时间戳的方法【使用microtime()函数】

    本文实例讲述了PHP实现获取毫秒时间戳的方法.分享给大家供大家参考,具体如下: PHP获取毫秒时间戳,利用microtime()函数 php本身没有提供返回毫秒数的函数,但提供了一个microtime ...

  8. 多线程编程:return、pthread_exit()、exit()函数区别

    多线程编程:return.pthread_exit().exit()函数区别: return:                 返回到调用者那里去 pthread_exit():    将调用该函数的 ...

  9. C++中重载与重写函数区别及虚函数(转载)

    C++中重载与重写函数区别及虚函数 C++中的虚函数(virtual function) 1.简介 虚函数是C++中用于实现多态(polymorphism)的机制.核心理念就是通过基类访问派生类定义的 ...

最新文章

  1. ca 自建 颁发证书_openssl自建CA后颁发证书
  2. 阿里云异构计算产品家族亮相 覆盖全场景AI和高性能计算需求
  3. php面向对象(OOP)---- 验证码类
  4. Linux路由器的架设
  5. comparable和comparator比较
  6. 如果一个c语言float型变量被赋予初值,计算机组成原理B.doc
  7. edp和edt哪个好_香水edp和edt是什么意思
  8. 国家信息安全公布:向日葵爆出执行漏洞,还有什么远程工具值得信赖?
  9. 分布式缓存Redis应用场景解析
  10. python的sleep_python的time.sleep()有多准确?
  11. linux上soul网关开通,soul 网关入门篇(一):搭建篇
  12. linux卸载zabbix数据库,结合宝塔linux面板 centos6 7一键zabbix安装脚本!
  13. 检測磁盘驱动的健康程度SMART
  14. 数学分析-1.2数列和收敛数列-例题1、2、3
  15. ads2020卸载 ads软件怎么卸载干净ads2016 ads2019卸载不干净无法重新安装 ads2017彻底卸载 ads2017卸载时删不尽
  16. tomcat10 实例化servlet 500错误解决办法
  17. 【信息学奥赛】1005:地球人口承载力估计(C++)
  18. 分布式原理:一文了解 Gossip 协议
  19. 除了摆地摊or送外卖,程序猿如何体面的赚零花钱?
  20. SPSS Modeler 建模前准备—数据平衡与特征选择(指南 第十一章)

热门文章

  1. 解决 Genymotion无法添加虚拟手机设备问题
  2. PPT 填充透明度,设计窗格在哪?
  3. Android面试实战总结
  4. 厂长来了x华创资本,第二季启动啦
  5. 去智联招聘扒了九千多条数据,为了搞清楚数据分析就业情况
  6. 定位的坐标原点HTML,css固定定位_CSS绝对定位固定定位详解
  7. 一个案例告诉你Smartbi自助数据分析工具有多实用!
  8. 怎样设置计算机保护密码,怎样电脑设置密码保护
  9. win7无密码访问共享
  10. 无锡校长另类“励志”演讲:长得不帅还不学习