2026年10月31日 · 今日 0 帖 · 会员 6.1万 · 主题 17.4万
登录 · 注册 · 游客,欢迎随便逛逛
返回版块
只看作者:默默无辰 查看全部
59999
王者却具王侯心等级图标等级图标等级图标等级图标等级图标等级图标
勋章勋章勋章勋章勋章勋章勋章
帖子
384
回复
1.4万
积分
6万
注册
2011-07-08
[怀旧国机]

PHP 时间日期

[复制链接]
查看 132 回复 0
楼主 发表于 | 查看全部

PHP 时间戳

UNIX 时间戳(timestamp)是 PHP 中关于时间日期一个很重要的概念,它表示从 1970年1月1日 00:00:00 到当前时间的秒数之和。

PHP提供了内置函数 time() 来取得服务器当前时间的时间戳。

例子:

<?php

echo time();

?>

上面的例子运行后得到的是一串类似这样的数字:1279115455

我们可以通过 date() 等函数将它格式化为我们需要的时间日期格式。

有效的时间戳典型范围是格林威治时间 1901年12月13日 20:45:54 到 2038年1月19日 03:14:07(此范围符合 32 位有符号整数的最小值和最大值)。不过从 5.1.0 起,已经克服了年的范围只能是 1901 到 2038 之间的问题。

提示

time() 得到的总是当前的时间戳,所以是不固定的值

如果时间戳为负数,则为从1970年1月1日 00:00:00往前推

时间差

时间戳虽然看起来好像不太直观,但我们在对时间做计算时却很方便。例如我们要计算时间差,或者对两个时间做比较等,直接比较数字即可而不必分别去考虑年月日时分秒的换算。而且在效率上时间戳作为整型数据也会快得多。

要求用户在登陆网站一定时间后失效而需要重新登录的例子:

<?php

$$expiration = $$time()+2*3600; //得到当前时间延迟2小时候的时间戳

//失效验证代码略

?>

那么只需要用户在活动期间将当前时间戳与 $$expiration 进行比较,如果大于 $$expiration 则要求用户重新登录。

页面执行时间

计算当前页面执行时间的例子:

<?php

//do something

sleep(3);

//do something

$$running_time = time() - $$_SERVER[‘REQUEST_TIME‘];

echo ‘页面运行时间:‘,$$running_time,‘ 秒‘;

?>

执行例子输出如下:

页面运行时间:3 秒

$$_SERVER[‘REQUEST_TIME‘] 是 PHP 内置的当前页面开始运行时的时间戳,在当前页面运行结束时将 time() - $$_SERVER[‘REQUEST_TIME‘] 得到的就是当前页面运行的时间(秒):

由于该例子没有其他更多内容,因此是用 sleep(3) 函数让页面执行延迟 3 秒钟。

登录回复

登录后可以回复这个帖子。旧账号可使用原密码登录。

登录 注册新号
← 返回版块