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 相关文章推荐
基于OpenCV的PHP图像人脸识别技术
Oct 11 PHP
yii框架中的Url生产问题小结
Jan 16 PHP
几种有用的变型 PHP中循环语句的用法介绍
Jan 30 PHP
PHP中将字符串转化为整数(int) intval() printf() 性能测试
Mar 20 PHP
php过滤所有恶意字符(批量过滤post,get敏感数据)
Mar 18 PHP
PHP自带函数给数字或字符串自动补齐位数
Jul 29 PHP
ThinkPHP调用common/common.php函数提示错误function undefined的解决方法
Aug 25 PHP
分享php代码将360浏览器导出的favdb的sqlite数据库文件转换为html
Dec 09 PHP
php数组函数array_walk用法示例
May 26 PHP
php实现HTML实体编号与非ASCII字符串相互转换类实例
Nov 02 PHP
php array_values 返回数组的值实例详解
Nov 17 PHP
PHP流Streams、包装器wrapper概念与用法实例详解
Nov 17 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 提速工具eAccelerator 配置参数详解
2010/05/16 PHP
PHP 自定义错误处理函数trigger_error()
2013/03/26 PHP
Thinkphp3.2.3分页使用实例解析
2016/07/28 PHP
Yii2实现让关联字段支持搜索功能的方法
2016/08/10 PHP
ThinkPHP5+UEditor图片上传到阿里云对象存储OSS功能示例
2019/08/05 PHP
Laravel6.2中用于用户登录的新密码确认流程详解
2019/10/16 PHP
JS Array对象入门分析
2008/10/30 Javascript
自己动手开发jQuery插件教程
2011/08/25 Javascript
js获取class的所有元素
2013/03/28 Javascript
jquery 快速回到页首的方法
2013/12/05 Javascript
将中国标准时间转换成标准格式的代码
2014/03/20 Javascript
浅谈js中的in-for循环
2016/06/28 Javascript
jQuery中deferred对象使用方法详解
2016/07/14 Javascript
AngularJS中比较两个数组是否相同
2016/08/24 Javascript
解析AngularJS中get请求URL出现的跨域问题
2016/12/01 Javascript
nodejs 搭建简易服务器的图文教程(推荐)
2017/07/18 NodeJs
requireJS模块化实现返回顶部功能的方法详解
2017/10/16 Javascript
利用百度echarts实现图表功能简单入门示例【附源码下载】
2019/06/10 Javascript
JS Html转义和反转义(html编码和解码)的实现与使用方法总结
2020/03/10 Javascript
详解Python中 __get__和__getattr__和__getattribute__的区别
2016/06/16 Python
Python标准库之itertools库的使用方法
2017/09/07 Python
pandas将DataFrame的列变成行索引的方法
2018/04/10 Python
Python图像处理之图像的缩放、旋转与翻转实现方法示例
2019/01/04 Python
Pycharm以root权限运行脚本的方法
2019/01/19 Python
Python参数传递对象的引用原理解析
2020/05/22 Python
在阿尔卑斯山或希腊度过快乐假期:Alpine Elements
2019/12/28 全球购物
西班牙Polo衫品牌:Polo Club
2020/08/09 全球购物
工程业务员工作职责
2013/12/07 职场文书
运动会通讯稿200字
2014/02/16 职场文书
篮球比赛拉拉队口号
2014/06/10 职场文书
2014高三学生考试作弊检讨书
2014/12/14 职场文书
成品仓库管理员岗位职责
2015/04/09 职场文书
房产电话营销开场白
2015/05/29 职场文书
python基于scrapy爬取京东笔记本电脑数据并进行简单处理和分析
2021/04/14 Python
Java Kafka 消费积压监控的示例代码
2021/07/01 Java/Android
mysql 生成连续日期及变量赋值
2022/03/20 MySQL