本文实例讲述了PHP UNIX时间戳用法。分享给大家供大家参考,具体如下:
时间戳是文件属性中的创建、修改、和访问时间。数字时间戳服务是Web网站安全服务项目之一,能提供电子文件的日期和时间信息的安全保护。
时间戳的优点是:
可用变化的加密数值,防止数值被窃取后非法重复利用,起到加密的作用。时间戳主要依赖于时间,在约定的一段时间内产生唯一的一个数值。
UNIX时间戳
在UNIX系统中,日期与时间表示为自1970年1月1日零点起到当前时刻的秒数,这种时间被称为UNIX时间戳,以32位二进制数表示。在不同的操作系统中均支持这种时间表示方式,同一时间在UNIX和Windows中均以相同的UNIX时间戳表示,所以不需要在不同的系统中进行转换。
目前UNIX时间戳是以32位二进制数表示,32位二进制数值范围为(-2147483648~+2147483647),由于系统不支持负的时间戳,因此,目前UNIX时间戳能表示的最大时间为2038年1月19日3点14分7秒,该时刻的时间戳为2147483647。于该时间后,需要扩展UNIX时间戳的二进制位数。
PHP中应用mktime()函数将一个时间转换成为UNIX时间戳值。
语法如下
mktime(hour,minute,second,month,day,year,is_dst)
display: table; border-collapse: collapse; font: 14px/26px Arial; white-space: normal; margin-bottom: 10px; letter-spacing: normal; color: rgb(0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">
ottom: rgb(153,153,153) 1px solid; min-width: 25px; border-left: rgb(153,153) 1px solid; padding-bottom: 5px; min-height: 25px; padding-left: 12px; padding-right: 16px; height: 25px; word-break: break-all; border-top: rgb(153,153) 1px solid; border-right: rgb(153,153) 1px solid; padding-top: 5px">参数
ottom: rgb(153,153) 1px solid; padding-top: 5px">描述 |
ottom: rgb(153,153) 1px solid; padding-top: 5px">hourottom: rgb(153,153) 1px solid; padding-top: 5px">可选。规定小时。ottom: rgb(153,153) 1px solid; padding-top: 5px">minuteottom: rgb(153,153) 1px solid; padding-top: 5px">可选。规定分钟。ottom: rgb(153,153) 1px solid; padding-top: 5px">secondottom: rgb(153,153) 1px solid; padding-top: 5px">可选。规定秒。ottom: rgb(153,153) 1px solid; padding-top: 5px">monthottom: rgb(153,153) 1px solid; padding-top: 5px">可选。规定用数字表示的月。ottom: rgb(153,153) 1px solid; padding-top: 5px">dayottom: rgb(153,153) 1px solid; padding-top: 5px">可选。规定天。ottom: rgb(153,153) 1px solid; padding-top: 5px">yearottom: rgb(153,153) 1px solid; padding-top: 5px">可选。规定年。在某些系统上,合法值介于 1901 - 2038 之间。不过在 PHP 5 中已经不存在这个限制了。ottom: rgb(153,153) 1px solid; padding-top: 5px">is_dstottom: rgb(153,153) 1px solid; padding-top: 5px">
ottom: 0px; margin: 5px 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">可选。如果时间在日光节约时间(DST)期间,则设置为1,否则设置为0,若未知,则设置为-1。
ottom: 0px; margin: 5px 0px; padding-left: 0px; padding-right: 0px; padding-top: 0px">自 5.1.0 起,is_dst 参数被废弃。因此应该使用新的时区处理特性。
例如:
rush:
PHP;">
echo "时间戳:".mktime().'
';//返回当前时间戳
echo "任意日期:".date("Y-m-d",mktime(0,2,21,1996)).'
';
echo "当前日期: ".date("Y-m-d",mktime()).'
';
运行结果为:
rush:
PHP;">
时间戳:1458979695
任意日期:1996-02-21
当前日期: 2016-03-26
获取当前时间戳
PHP通过time()函数获取当前的UNIX时间戳。
语法如下:
int time(void);
该函数没有参数,返回值为UNIX时间戳的整数值。
例如:
rush:
PHP;">
echo time()."
";//
输出当前时间戳
$nextWeek = time()+(7*24*60*60);//
一个星期七天,一天24小时,
一个小时60分,一分60秒
echo "
Now: ".date("Y-m-d")."
";
echo "Next Week: ".date("Y-m-d",$nextWeek);
运行结果为
rush:
PHP;">
1458980073
Now: 2016-03-26
Next Week: 2016-04-02
将英文文本的日期时间描述解析为UNIX时间戳
strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳。
语法
strtotime(time,Now)
display: table; border-collapse: collapse; font: 14px/26px Arial; white-space: normal; margin-bottom: 10px; letter-spacing: normal; color: rgb(0,0); word-spacing: 0px; -webkit-text-stroke-width: 0px">
ottom: rgb(153,153) 1px solid; padding-top: 5px">参数
ottom: rgb(153,153) 1px solid; padding-top: 5px">描述 |
ottom: rgb(153,153) 1px solid; padding-top: 5px">timeottom: rgb(153,153) 1px solid; padding-top: 5px">规定要解析的时间字符串。ottom: rgb(153,153) 1px solid; padding-top: 5px">Nowottom: rgb(153,153) 1px solid; padding-top: 5px">用来计算返回值的时间戳。如果省略该参数,则使用当前时间。
例如:
rush:
PHP;">
echo(strtotime("
Now")).'
';
echo(strtotime("3 October 2005")).'
';
echo(strtotime("+5 hours")).'
';
echo(strtotime("+1 week")).'
';
echo(strtotime("+1 week 3 days 7 hours 5 seconds")).'
';
echo(strtotime("next Monday")).'
';
echo(strtotime("last Sunday")).'
';
运行结果为:
rush:
PHP;">
1458980310
1128268800
1458998310
1459585110
1459869515
1459094400
1458403200
如果想要查看这个时间戳对应的时间,例如:
rush:
PHP;">
echo date("Y-m-d H:i:s",strtotime("
Now")).'
';
echo date("Y-m-d H:i:s",strtotime("next Thursday")).'
';
运行结果为:
rush:
PHP;">
2016-03-26 16:21:32
2016-03-31 00:00:00
PS:本站还提供了一个Unix时间戳转换工具,包含了各种常见语言针对时间戳的操作方法,提供给大家参考:
Unix时间戳(timestamp)转换工具:
更多关于PHP相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》、《》及《》
希望本文所述对大家PHP程序设计有所帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。