PHP 时间函数time、date和microtime的区别
一、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的区别的更多相关文章
- php时间函数time(),date(),mktime()区别
php时间函数time(),date(),mktime()区别 浏览:1161 发布日期:2014/12/18 分类:系统代码 关键字: php时间函数 time() date()mktime() ...
- 玩转PHP(二)--PHP强大的时间函数:date()
PHP具有相对来说强大的时间函数date(),该方法有下列一系列参数: 例如: echo date("Y-m-d H:i:s"); //2015-01-09 13:03:30 如果 ...
- Perl 日期时间函数(date time)
use Time::HiRes qw(time);use POSIX qw(strftime); my $t = time;my $date = strftime "%Y%m%d %H:%M ...
- date时间函数
时间函数: date();和time();的相互转换 time(); 在PHP中单位是秒,在js中是毫秒. microtime(); 毫秒 date('Y-m-d H:i:s',time()); ...
- php时间函数整理
PHP中的时间函数有这么些:(1)date用法: date(格式,[时间]);如果没有时间参数,则使用当前时间. 格式是一个字符串,其中以下字符有特殊意义:U 替换成从一个起始时间(好象是1970年1 ...
- php时间函数
PHP中的时间函数有这么些:(1)date用法: date(格式,[时间]);如果没有时间参数,则使用当前时间. 格式是一个字符串,其中以下字符有特殊意义:U 替换成从一个起始时间(好象是1970年1 ...
- php时间函数大锦集
PHP中的时间函数有这么些:(1)date用法: date(格式,[时间]);如果没有时间参数,则使用当前时间. 格式是一个字符串,其中以下字符有特殊意义:U 替换成从一个起始时间(好象是1970年1 ...
- SQLite日期时间函数
SQLite日期时间函数 SQLite支持以下五个日期时间函数: date(timestring, modifier, modifier, …) time(timestring, modifier, ...
- sqlite 时间函数及时间处理
SQLite分页显示:Select * From news order by id desc Limit 10 Offset 10这篇文章是根据 SQLite 官方 WIKI 里的内容翻译,如果有什么 ...
随机推荐
- node 读取多个文件、合并多个文件、读写多个文件
一.读取文件 1.找文件中匹配的内容 let fs = require('fs') let content = fs.readFileSync('/Users/**/desktop/Test.txt' ...
- 每日linux命令学习-grep模式检索
grep模式检索指令包括grep,egrep,和fgrep,.Linux系统使用正则表达式优化文本检索,所以在此,笔者首先学习了一下正则表达式. 1. 正则表达式 正则表达式使用被称为元字符(Meta ...
- Tomcat启动程序端口冲突、确认相应进程及杀死冲突进程的解决方案
一. 查看所有进程占用的端口 在开始-运行-cmd,输入:netstat –ano可以查看所有进程 二.查看占用指定端口的程序(1)命令窗口输出 命令:netstat –ano | findstr & ...
- Linux内核线程创建
本文旨在简单介绍一下Linux内核线程: 先举个例子: 不插U盘,在Linux命令行中输入:ps -el:然后插上U盘,再次输入:ps -el 会发现多出了下面一行(当然还会有其他的,比如scsi相关 ...
- sqlite3增删改查简单封装
import sqlite3 class DBTool(object): def __init__(self): """ 初始化函数,创建数据库连接 "&quo ...
- windows下使用命令行运行PHP
之前一直想,在命令行下能不能运行PHP程序,像C语言一样可以通过命令行拿到参数.今天尝试了一下发现可感觉挺有意思的,平时写着程序玩的时候就可以这样用,下面让咱么来看看怎么做的.我的环境是 php5.6 ...
- JAVA的内存模型及结构
所有的Java开发人员可能会遇到这样的困惑?我该为堆内存设置多大空间呢?OutOfMemoryError的异常到底涉及到运行时数据的哪块区域?该怎么解决呢? Java内存模型 Java内存模型在JVM ...
- Javascropt-KeyCode
当点回车时触发搜索事件 $(document).keydown(function (e) { if (e.keyCode == 13) { ...
- Java 判断字符串是否为空的四种方法、优缺点与注意事项
以下是Java 判断字符串是否为空的四种方法: 方法一: 最多人使用的一个方法, 直观, 方便, 但效率很低: if(s == null ||"".equals(s));方法二: ...
- [c/c++] programming之路(2)、kill QQ,弹出系统对话框,吃内存等
一.删除文件 二.盗取密码的原理 #include<stdlib.h> //杀掉QQ,然后提示网络故障,请重新登陆,弹出高仿界面,获取账号密码,然后打开QQ进行登录 void main() ...