本文实例详细讲述了 php 中 time()与 $_SERVER[REQUEST_TIME]用法的区别分享给大家供大家参考具体分析如下:
简单的说 time()与 $_SERVER["REQUEST_TIME"]都是获得时间的, 但 time 返回当前的 Unix 时间戳而 $_SERVER["REQUEST_TIME"]得到请求开始时的时间戳, 稍有区别
1. time() 获取当前的系统时间戳
int time(void) :
返回当前的 Unix 时间戳 (返回自从 Unix 纪元 (格林威治时间 1970 年 1 月 1 日 00:00:00) 到当前时间的秒数 )
自 PHP 5.1 起在 $_SERVER['REQUEST_TIME'] 中保存了发起该请求时刻的时间戳
$_SERVER["REQUEST_TIME"] :The timestamp of the start of the request. Available since PHP 5.1.0. 一看解释就都明白了
2. $_SERVER["REQUEST_TIME"] 得到请求开始时的时间戳
实例代码:
代码如下:
- <?php
- date_default_timezone_set('PRC');
- sleep(5);//php 脚本睡 5 秒
- echo date('Y-m-d H:i:s',time());// 获取当前系统时间的时间戳
- echo '
- ';
- echo date('Y-m-d H:i:s',$_SERVER['REQUEST_TIME']);// 得到请求此 php 脚本时的时间戳
- ?>
输出结果截图如下:
结论:
因为 sleep(5)睡了 5 秒, 之后用 time()获取系统的时间戳,$_SERVER['REQUEST_TIME']则记录了发起此请求时刻的时间戳所以 $_SERVER['REQUEST_TIME']比用 time()获取的时间戳早 5 秒
来源: https://www.php1.cn/detail/php-8adae5ae3f.html