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 相关文章推荐
PHP下对数组进行排序的函数
Aug 08 PHP
PHP 无限分类三种方式 非函数的递归调用!
Aug 26 PHP
PHP Parse Error: syntax error, unexpected $end 错误的解决办法
Jun 05 PHP
yii操作session实例简介
Jul 31 PHP
ThinkPHP模板输出display用法分析
Nov 26 PHP
php获取客户端电脑屏幕参数的方法
Jan 09 PHP
php中使用url传递数组的方法
Feb 11 PHP
php实现读取内存顺序号
Mar 29 PHP
php常用数组函数实例小结
Dec 29 PHP
利用phpexcel对数据库数据的导入excel(excel筛选)、导出excel
Apr 27 PHP
PHP读取Excel类文件
May 15 PHP
Laravel框架处理用户的请求操作详解
Dec 20 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使用curl模拟登录后采集页面的例子
2013/11/04 PHP
很多人都是用下面的js刷新站IP和PV
2008/09/05 Javascript
Jquery调用webService远程访问出错的解决方法
2010/05/21 Javascript
ajax异步刷新实现更新数据库
2012/12/03 Javascript
jQuery多项选项卡的实现思路附样式及代码
2014/06/03 Javascript
Node.js中对通用模块的封装方法
2014/06/06 Javascript
javascript搜索框点击文字消失失焦时文本出现
2014/09/18 Javascript
jQuery+css3动画属性制作猎豹浏览器宽屏banner焦点图
2015/03/16 Javascript
学习JavaScript设计模式之装饰者模式
2016/01/19 Javascript
学习使用AngularJS文件上传控件
2016/02/16 Javascript
js中字符串编码函数escape()、encodeURI()、encodeURIComponent()区别详解
2016/04/01 Javascript
Bootstrop实现多级下拉菜单功能
2016/11/24 Javascript
JS获取鼠标位置距浏览器窗口距离的方法示例
2017/04/11 Javascript
vue页面跳转后返回原页面初始位置方法
2018/02/11 Javascript
微信小程序之swiper轮播图中的图片自适应高度的方法
2018/04/23 Javascript
jquery实现的简单轮播图功能【适合新手】
2018/08/17 jQuery
微信小程序页面间传值与页面取值操作实例分析
2019/04/30 Javascript
python之DataFrame实现excel合并单元格
2021/02/22 Python
python中文编码与json中文输出问题详解
2018/08/24 Python
Django 过滤器汇总及自定义过滤器使用详解
2019/07/19 Python
python函数局部变量、全局变量、递归知识点总结
2019/11/15 Python
Pycharm debug调试时带参数过程解析
2020/02/03 Python
python 比较字典value的最大值的几种方法
2020/04/17 Python
keras分类模型中的输入数据与标签的维度实例
2020/07/03 Python
HTML5 画布canvas使用方法
2016/03/18 HTML / CSS
法国大使拉杆箱官网:DELSEY Paris
2018/03/20 全球购物
瑞典多品牌连锁店:Johnells
2021/01/13 全球购物
业务部门经理岗位职责
2014/02/23 职场文书
幼儿园安全责任书
2014/04/14 职场文书
认错检讨书
2014/10/02 职场文书
神龙架导游词
2015/02/11 职场文书
学校节水倡议书
2015/04/29 职场文书
葬礼主持词
2015/07/02 职场文书
mysql配置SSL证书登录的实现
2021/09/04 MySQL
MySQL中几种插入和批量语句实例详解
2021/09/14 MySQL
纯 CSS 自定义多行省略的问题(从原理到实现)
2021/11/11 HTML / CSS