php UNIX时间戳用法详解


Posted in PHP onFebruary 16, 2017

本文实例讲述了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获取指定日期的时间戳

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 参数被废弃。因此应该使用新的时区处理特性。

例如:
echo "时间戳:".mktime().'<br>';//返回当前时间戳
echo "任意日期:".date("Y-m-d",mktime(0,0,0,2,21,1996)).'<br>';
echo "当前日期: ".date("Y-m-d",mktime()).'<br>';

运行结果为:

时间戳:1458979695
任意日期:1996-02-21
当前日期: 2016-03-26

获取当前时间戳

PHP通过time()函数获取当前的UNIX时间戳。

语法如下:

int time(void);

该函数没有参数,返回值为UNIX时间戳的整数值。

例如:

echo time()."<br>";//输出当前时间戳
$nextWeek = time()+(7*24*60*60);//一个星期七天,一天24小时,一个小时60分,一分60秒
echo "Now: ".date("Y-m-d")."<br>";
echo "Next Week: ".date("Y-m-d",$nextWeek);

运行结果为

1458980073
Now: 2016-03-26
Next Week: 2016-04-02

将英文文本的日期时间描述解析为UNIX时间戳

strtotime() 函数将任何英文文本的日期时间描述解析为 Unix 时间戳。

语法

strtotime(time,now)

参数 描述
time 规定要解析的时间字符串。
now 用来计算返回值的时间戳。如果省略该参数,则使用当前时间。 

例如:
echo(strtotime("now")).'<br>';
echo(strtotime("3 October 2005")).'<br>';
echo(strtotime("+5 hours")).'<br>';
echo(strtotime("+1 week")).'<br>';
echo(strtotime("+1 week 3 days 7 hours 5 seconds")).'<br>';
echo(strtotime("next Monday")).'<br>';
echo(strtotime("last Sunday")).'<br>';

运行结果为:

1458980310
1128268800
1458998310
1459585110
1459869515
1459094400
1458403200

如果想要查看这个时间戳对应的时间,例如:

echo date("Y-m-d H:i:s",strtotime("now")).'<br>';
echo date("Y-m-d H:i:s",strtotime("next Thursday")).'<br>';

运行结果为:

2016-03-26 16:21:32
2016-03-31 00:00:00

PS:本站还提供了一个Unix时间戳转换工具,包含了各种常见语言针对时间戳的操作方法,提供给大家参考:

Unix时间戳(timestamp)转换工具:
http://tools.3water.com/code/unixtime

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
fleaphp常用方法分页之Pager使用方法
Apr 23 PHP
php类中private属性继承问题分析
Nov 01 PHP
PHP获取当前日期和时间及格式化方法参数
May 11 PHP
php根据用户语言跳转相应网页
Nov 04 PHP
smarty学习笔记之常见代码段用法总结
Mar 19 PHP
PHP实现留言板功能的详细代码
Mar 25 PHP
php 调用ffmpeg获取视频信息的简单实现
Apr 03 PHP
PHP使用文件锁解决高并发问题示例
Mar 29 PHP
php如何比较两个浮点数是否相等详解
Feb 12 PHP
PHP7新功能总结
Apr 14 PHP
php libevent 功能与使用方法详解
Mar 04 PHP
PHP实现获取文件mime类型多种方法解析
May 28 PHP
php计算多个集合的笛卡尔积实例详解
Feb 16 #PHP
php实现文件与16进制相互转换的方法示例
Feb 16 #PHP
php根据用户名和手机号查询是否存在手机号码
Feb 16 #PHP
php使用PDO执行SQL语句的方法分析
Feb 16 #PHP
php四种定界符详解
Feb 16 #PHP
php使用PDO获取结果集的方法
Feb 16 #PHP
redirect_uri参数错误的解决方法(必看)
Feb 16 #PHP
You might like
php urlencode()与urldecode()函数字符编码原理详解
2011/12/06 PHP
set_include_path和get_include_path使用及注意事项
2013/02/02 PHP
浅谈web上存漏洞及原理分析、防范方法(安全文件上存方法)
2013/06/29 PHP
总结PHP代码规范、流程规范、git规范
2018/06/18 PHP
jQuery Tools tooltip使用说明
2012/07/14 Javascript
JQuery入门——用one()方法绑定事件处理函数(仅触发一次)
2013/02/05 Javascript
Mac/Windows下如何安装Node.js
2013/11/22 Javascript
js showModalDialog 弹出对话框的简单实例(子窗体)
2014/01/07 Javascript
javascript常见数据验证插件大全
2015/08/03 Javascript
jQuery+html5+css3实现圆角无刷新表单带输入验证功能代码
2015/08/21 Javascript
基于javascript实现彩票随机数生成(简单版)
2020/04/17 Javascript
详解bootstrap的modal-remote两种加载方式【强化】
2017/01/27 Javascript
基于javascript 显式转换与隐式转换(详解)
2017/12/15 Javascript
Nodejs Express 通过log4js写日志到Logstash(ELK)
2018/08/30 NodeJs
ES6 新增的创建数组的方法(小结)
2019/08/01 Javascript
Vue+element+cookie记住密码功能的简单实现方法
2020/09/20 Javascript
如何运行Python程序的方法
2013/04/21 Python
python实现清屏的方法
2015/04/30 Python
python opencv之分水岭算法示例
2018/02/24 Python
Anaconda2下实现Python2.7和Python3.5的共存方法
2018/06/11 Python
python事件驱动event实现详解
2018/11/21 Python
python3实现往mysql中插入datetime类型的数据
2020/03/02 Python
Python基于stuck实现scoket文件传输
2020/04/02 Python
Spring @Enable模块驱动原理及使用实例
2020/06/23 Python
CSS3实现伪类hover离开时平滑过渡效果示例
2017/08/10 HTML / CSS
Europcar美国/加拿大:预订汽车或卡车租赁服务
2018/11/13 全球购物
为您搜罗全球潮流時尚品牌:HBX
2019/12/04 全球购物
eBay荷兰购物网站:eBay.nl
2020/06/26 全球购物
英语专业学子个人的自我评价
2013/10/02 职场文书
2014年3.15团委活动总结
2014/03/16 职场文书
和睦家庭事迹
2014/05/14 职场文书
学生无故旷课检讨书
2014/09/20 职场文书
元宵节晚会主持词
2015/07/01 职场文书
2016年优秀党员教师先进事迹材料
2016/02/29 职场文书
springboot如何初始化执行sql语句
2021/06/22 Java/Android
详解Alibaba Java诊断工具Arthas查看Dubbo动态代理类
2022/04/08 Java/Android