PHP 时间函数time、date和microtime的区别

时间:2021-08-11 02:42:16

一、time、date 和 microtime函数

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

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

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

二、三者的区别

1.time() 函数

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

<?php
echo time();
--------------------
输出结果
1546501413

2.date() 函数

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

<?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 的和,保留四位小数,如下:

<?php
list($msec, $sec) = explode(" ", microtime());
echo $msec;
echo "<br />";
echo $sec;
---------------------------------------
输出结果 0.30716500<br />1546501702

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

的运行时间等

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

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

<?php

   function get_subtraction() {
$t1 = microtime(true);
$t2 = microtime(true); echo (($t2 - $t1)*1000).'ms';
}
get_subtraction(); --------------------------------------- 输出结果:
0.0019073486328125ms

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

<?php
2
3 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 时间戳和微秒数(用秒的小数表示)浮点数表示,常用来计算代码执行时间

<?php
2
3 function microtime_float() {
4 list($msec, $sec) = explode(" ", microtime());
5 echo (float)$msec + (float)$sec;
6 }
7
8 microtime_float();

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

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

 <?php
2
3 list($msec, $sec) = explode(" ", microtime());
4 $msectime = (float)sprintf("%.0f", (floatval($msec) + floatval($sec)) * 1000);
5
6 echo $mesctime; ------------------------------------ 输出结果: 1546509149102

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

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

 

PHP 时间函数time、date和microtime的区别的更多相关文章

  1. php时间函数time&lpar;&rpar;&comma;date&lpar;&rpar;&comma;mktime&lpar;&rpar;区别

    php时间函数time(),date(),mktime()区别   浏览:1161 发布日期:2014/12/18 分类:系统代码 关键字: php时间函数 time() date()mktime() ...

  2. 玩转PHP&lpar;二&rpar;--PHP强大的时间函数:date&lpar;&rpar;

    PHP具有相对来说强大的时间函数date(),该方法有下列一系列参数: 例如: echo date("Y-m-d H:i:s"); //2015-01-09 13:03:30 如果 ...

  3. Perl 日期时间函数(date time)

    use Time::HiRes qw(time);use POSIX qw(strftime); my $t = time;my $date = strftime "%Y%m%d %H:%M ...

  4. date时间函数

    时间函数: date();和time();的相互转换 time();   在PHP中单位是秒,在js中是毫秒. microtime();  毫秒 date('Y-m-d H:i:s',time()); ...

  5. php时间函数整理

    PHP中的时间函数有这么些:(1)date用法: date(格式,[时间]);如果没有时间参数,则使用当前时间. 格式是一个字符串,其中以下字符有特殊意义:U 替换成从一个起始时间(好象是1970年1 ...

  6. php时间函数

    PHP中的时间函数有这么些:(1)date用法: date(格式,[时间]);如果没有时间参数,则使用当前时间. 格式是一个字符串,其中以下字符有特殊意义:U 替换成从一个起始时间(好象是1970年1 ...

  7. php时间函数大锦集

    PHP中的时间函数有这么些:(1)date用法: date(格式,[时间]);如果没有时间参数,则使用当前时间. 格式是一个字符串,其中以下字符有特殊意义:U 替换成从一个起始时间(好象是1970年1 ...

  8. SQLite日期时间函数

    SQLite日期时间函数 SQLite支持以下五个日期时间函数: date(timestring, modifier, modifier, …) time(timestring, modifier, ...

  9. sqlite 时间函数及时间处理

    SQLite分页显示:Select * From news order by id desc Limit 10 Offset 10这篇文章是根据 SQLite 官方 WIKI 里的内容翻译,如果有什么 ...

随机推荐

  1. Azure机器学习入门(二)创建Azure机器学习工作区

    我们将开始深入了解如何使用Azure机器学习的基本功能,帮助您开始迈向Azure机器学习的数据科学家之路. Azure ML Studio (Azure Machine Learning Studio ...

  2. 零基础如何系统学习Java Web

    零基础如何系统学习Java Web?   我来给你说一说 你要下决心,我要转行做开发,这样你才能学成. 你要会打字,我公司原来有一个程序员,打字都是两个手一指禅,身为程序员你一指禅怎么写出的代码,半个 ...

  3. 【CodeForces 577C】Vasya and Petya’s Game

    链接 某个数x属于[1,n],至少询问哪些数“x是否是它的倍数”才能判断x.找出所有质因数和质因数的幂即可. #include<cstdio> #include<algorithm& ...

  4. js 操作ASP&period;NET服务器控件

    js 操作ASP.NET服务器控件 在ASP.NET中使用js时,js获取DOM元素时,经常获取不到,这是因为获取的方法有误,现在介绍一方法,解决如何使用js获取ASP.NET控件在浏览器端生成htm ...

  5. google maps js v3 api教程&lpar;3&rpar; -- 创建infowindow

    原文地址 前面我们学习了地图和标记的创建.那么今天我们来学习怎样在地图上显示一个窗口(infowindow) infowindow构造函数为:InfoWindow(opts?:InfoWindowOp ...

  6. 【WebForm】Js调用后台C&num;方法

    因业务的需要,有这么个需求,需要前台的JS传参调用C#后台的方法.现在有这么个方法可以解决,整理如下. 首先,先说一下基本实现,前台用Jquery的ajax将其中的URL后加方法,然后在Data中传递 ...

  7. 编写C&num; Windows服务,用于杀死Zsd&period;exe进程

    最近经常在我的xp系统进程中出现Zsd.exe进程.刚开始他占用内存不是很大.但是过了一段时间就会变成几百M 机器就会变得很卡,网上说Zsd可能是病毒.所以我就想要不写一个Windows服务,让他每隔 ...

  8. kingso - &sol; - Taocode

    kingso - / - Taocode     这两天在线下搭建了kingso示例服务,有兴趣的同学请自取. 源代码位置:192.168.201.73:9022 /home/wcm/kingso 安 ...

  9. 【Tips】Endnote导入IEEE Xplore文献方法《转载》

    1. 在IEEE XPlore中点击“Download Citation”: 2. 选中“Citation & Abstract”和“EndNote,Procite,RefMan”两个选项: ...

  10. Python爬虫 URLError异常处理

    1.URLError 首先解释下URLError可能产生的原因: 网络无连接,即本机无法上网 连接不到特定的服务器 服务器不存在 在代码中,我们需要用try-except语句来包围并捕获相应的异常.下 ...