在前面几篇关于“PHP日期与时间”的博文当中我们多次提到了“时间戳”这个概念。很多朋友肯定都是第一次接触这个术语,什么是时间戳?时间戳有什么作用?我相信大部分朋友跟Zero一样还是一头雾水。不过没有多大关系,这一篇博文Zero就将和大家一起接受和认识这个全新的名词,希望通过这篇博文我们都能攻克这个全新的名词。
时间戳是什么? 时间戳是文件属性中的创建、修改、访问时间。
时间戳是一个经加密后形成的凭证文档,主要包括三部分。
·需要添加时间戳的文件用Hash编码加密形成摘要。
·DTS接收文件的日期和时间信息。
·对接收的DTS文件加密。
时间戳的作用原理是通过其他加密法将时间的数值转换为加密的数值。
时间戳有什么有点? 用变化的加密数值来防止数值被盗取后非法重复利用,也就起到了加密的作用。在约定的一段时间内产生唯一的一个数值。
看了上面的介绍我想大家肯定还是一头雾水,没关系我们通过获取一个本地时间戳来更形象化的了解时间戳的概念。
PHP主要应用mktime()函数将一个时间转换成UNIX的时间戳值。
语法格式:
mktime(hour,minute,second,month,day,year,[is_dst])
其参数可以从右向左省略,任何省略的参数都会被设置成本地日期和时间的当前值。
参数 | 描述 | hour | 可选。规定小时。 | minute | 可选。规定分钟。 | second | 可选。规定秒。 | month | 可选。规定用数字表示的月。 | day | 可选。规定天。 | year | 可选。规定年。在某些系统上,合法值介于 1901 – 2038 之间。不过在 PHP 5 中已经不存在这个限制了。 | is_dst | 可选。如果时间在日光节约时间(DST)期间,则设置为1,否则设置为0,若未知,则设置为-1。自 5.1.0 起,is_dst 参数被废弃。因此应该使用新的时区处理特性。 |
实例:使用mktime()函数获取系统的当前时间,由于返回的是时间戳,还要通过date()函数(详见上篇博文《从34到35,PHP显示本地化的日期和时间》)对其进行格式化,才能输出日期和时间。
代码:
- <?php
- echo “mktime函数返回的当前时间戳:”.mktime().”<p>”;
- echo “当前的日期时间为:”.date(“Y-m-d H:i:s”,mktime());
- ?>
复制代码
返回结果:
mktime函数返回的当前时间戳:1290518514
当前的日期时间为:2010-11-23 13:21:54
如何获取当前时间戳? PHP提供了time()函数用于返回当前的UNIX时间戳,返回值为从UNIX纪元(格林威治时间1970年1月1日00:00:00)到当前时间的秒数。
语法格式:time(void)
实例:本例中使用time()获取当前时间戳,并将时间戳格式化输出。
代码:
- <?php
- $zero=time()+(1*24*60*60);//1天、24小时、60分、60秒
- echo “今天是:”.date(“Y-m-d”).”<p>”;
- echo “明天是:”.date(“Y-m-d”,$zero);
- ?>
复制代码
输出结果:
今天是:2010-11-23
明天是:2010-11-24
|
上一篇: 从34到35,PHP显示本地化的日期和时间下一篇: 从35到36,PHP中几个常用的时间应用方式
|