PHP获取当前时间的5种实现方式

admin3年前PHP教程53

在日期和时间函数中,UNIX 时间戳的获取非常重要,时间戳是一个字符序列,是指格林尼治时间 1970年 01 月 01 日 00 时 00 分 00 秒(北京时间 1970 年 01 月 01 日 08 时 00 分 00 秒)起至现在的总毫秒数。下面介绍几个获取当前时间的函数。

gmmktime()

gmmktime() 函数可取得 GMT 日期的 UNIX 时间戳。语法如下:


int gmmktime ([ int $hour [, int $minute [, int $second [, int $month [, int $day [, int $year [, int $is_dst ]]]]]]] )

该函数的参数可以从右到左依次空着,空着的参数会被设为相应的当前 GMT 值。

使用示例如下:


<?php
echo gmmktime(); //没有设置参数, 则默认取得当前GMT时间
echo gmmktime(0,45,3,7,7,2016); //设置参数表示GMT时间2016年7月7日0点45分3秒
?>

执行以上程序的打印结果为:
1467909956   1467852303

mktime()

mktime() 也可取得一个日期的 UNIX 时间戳。语法如下:


int mktime ([ int $hour = date("H") [, int $minute = date("i") [, int $second = date("s") [, int $month = date("n") [, int $day = date("j") [, int $year = date("Y") [, int $is_dst = -1 ]]]]]]] )

该函数根据给出的参数返回 UNIX 时间戳。时间戳是一个长整数,包含了从 UNIX 纪元到给定时间的秒数。

和 gmmktime() 函数一样,该函数的参数也可以从右向左省略,任何省略的参数会被设置成本地日期和时间的当前值。

使用示例如下:


<?php
echo mktime(); // 没有设置参数则默认取得当前GMT时间
echo mktime(0,45,3,7,7,2016); //设置参数表示GMT时间2016年7月7日0点45分3秒
?>

执行以上程序的打印结果为:
1467910465 1467852303

microtime()

microtime() 可获得当前 UNIX 时间戳和微秒数。语法如下:


mixed microtime ([ bool $get_as_float ] )

如果设置 get_as_float 参数值为 true,microtime() 将返回一个浮点数;若不带参数,则返回一个“msec sec”格式的字符串,其中 sec 是自 UNIX 纪元起到现在的秒数,msec 是微秒部分。字符串的两部分都是以秒为单位返回的。

使用示例如下:


<?php
echo microtime(); //返回 msec sec 格式字符串表示时间
echo "<br/>";
echo microtime(true); //返回一个浮点型字符串表示时间
?>

执行以上程序的打印结果如下:
0.40474900 1467910862
1467910862.4048

time()

time() 函数可返回当前的 UNIX 时间戳。语法如下:


int time ( void )

time() 函数的语法比较简单,使用示例如下:


<?php
echo time();
?>

执行以上程序的打印结果为:
1467911104

getdate()

getdate() 可取得日期时间信息。语法如下:


array getdate ([ int $timestamp = time() ] )

该函数返回一个根据 timestamp 得出的包含有日期信息的关联数组 array。如果没有给出时间戳,则认为是当前本地时间(此时和 time() 函数取值相同)。

其返回的关联数组中的键名单元如表所示。

getdate() 函数返回关联数组键名

 

键名说明返回值例子seconds秒的数字表示0 到 59minutes分钟的数字表示0 到 59hours小时的数字表示0 到 23mday月份中第几天的数字表示1 到 31wday星期中第几天的数字表示0(周日)到6(周六)mon月份的数字表示1 到 12year4 位数字表示的完整年份比如:1999 或 2019yday一年中第几天的数字表示0 到 365weekday星期几的完整文本表示Monday 到 Sundaymonth月份的完整文本表示,,比如 January 或 AprilJanuary 到 December0自从 UNIX 纪元开始至今的秒数,和 time() 的返回值以及用于 date() 的值类似系统相关,典型值为 -2147483648 ~ 2147483647

 

getdate() 函数的使用示例如下:


<?php
echo "<pre>";
var_dump(getdate());
?>

执行以上程序的打印结果如下:
array(11) {
    ["seconds"]=>int(57)
    ["minutes"]=>int(18)
    ["hours"]=>int(17)
    ["mday"]=>int(7)
    ["wday"]=>int(4)
    ["mon"]=>int(7)
    ["year"]=>int(2016)
    ["yday"]=>int(188)
    ["weekday"]=>string(8) "Thursday"
    ["month"]=>string(4) "July"
    [0]=>int(1467911937)
}

到此这篇关于PHP获取当前时间的5种实现方式的文章就介绍到这了,更多相关PHP获取当前时间内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

免责声明:本文内容来自用户上传并发布,站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。请核实广告和内容真实性,谨慎使用。

相关文章

站群推广需要注意哪些境外站群服务器租用怎么选择

说到互联网的推广,企业比较熟悉,尤其是站群的推广,可以以多个网站为中心进行优化,使得网站的收录量增加,流量激增,排名靠前,受到大多数企业的青睐。同时,还可以帮助企业解决难以准确获取客户等问题。所以,站...

GPU是AI时代的算力核心韩国GPU服务器如何选择合适的

自动驾驶、智能机器人、新材料发现、医药科学、医学影像分析……人工智能时代的科学研究极度依赖算力支持。提供算力的硬件芯片厂商中,首屈一指当属英伟达。如果不说几句GPU和英伟达,都不好意思跟别人说自己是做...

PHP扩展之kafka安装应用案例详解

话说用了就要有点产出,要不然过段时间又忘了,所以在这里就记录一下试用Kafka的安装过程和php扩展的试用。实话说,如果用于队列的话,跟PHP比较配的,还是Redis。用的顺手,呵呵,只是Redis不...

江苏高防服务器如何安全有效防御DDOS攻击

江苏高防服务器如何安全有效防御DDOS攻击?DDoS(分布式拒绝服务攻击)是一种非常常见的网络攻击方式,它的目的是通过同时向一个网络资源发送大量的请求,以致于让该资源无法响应正常的请求。以下是几种江苏...

江西gpu服务器租用价格怎么算的

GPU服务器租用的价格通常基于以下几个因素:GPU类型和数量:不同型号和数量的GPU具有不同的计算能力和价格。例如,一台配备一张NvidiaTeslaV100GPU的服务器比一台配备一张NvidiaG...

租用韩国多IP服务器的好处

韩国拥有先进的科技产业和良好的网络基础设施,因此很多企业和个人都需要租用韩国多IP服务器来搭建网站、进行游戏、进行数据分析等等。首先,需要了解的是韩国多IP服务器是指在一个韩国物理服务器上分配多个IP...