博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP时间戳函数总结
阅读量:7236 次
发布时间:2019-06-29

本文共 2929 字,大约阅读时间需要 9 分钟。

hot3.png

中的函数有许多种,各种应用方式不同,实现的功能也不尽相同。我们在本文种为大家总结了PHP时间戳函数,希望能作为参考学习对象。

一,PHP时间戳函数获取指定日期的unix时间戳 strtotime(”2009-1-22″) 示例如下:

echo strtotime(”2009-1-22″) 结果:1232553600

说明:返回2009年1月22日0点0分0秒时间戳

二,PHP时间戳函数获取英文文本日期时间 示例如下:

便于比较,使用date将当时间戳与指定时间戳转换成系统时间

(1)打印明天此时的时间戳strtotime(”+1 day”)

当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25

指定时间:echo date(”Y-m-d H:i:s”,strtotime(”+1 day”)) 结果:2009-01-23 09:40:25

(2)打印昨天此时的时间戳strtotime(”-1 day”)

当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25

指定时间:echo date(”Y-m-d H:i:s”,strtotime(”-1 day”)) 结果:2009-01-21 09:40:25

(3)打印下个星期此时的时间戳strtotime(”+1 week”)

当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25

指定时间:echo date(”Y-m-d H:i:s”,strtotime(”+1 week”)) 结果:2009-01-29 09:40:25

(4)打印上个星期此时的时间戳strtotime(”-1 week”)

当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25

指定时间:echo date(”Y-m-d H:i:s”,strtotime(”-1 week”)) 结果:2009-01-15 09:40:25

(5)打印指定下星期几的时间戳strtotime(”next Thursday”)

当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25

指定时间:echo date(”Y-m-d H:i:s”,strtotime(”next Thursday”)) 结果:2009-01-29 00:00:00

(6)打印指定上星期几的时间戳strtotime(”last Thursday”)

当前时间:echo date(”Y-m-d H:i:s”,time()) 结果:2009-01-22 09:40:25

指定时间:echo date(”Y-m-d H:i:s”,strtotime(”last Thursday”)) 结果:2009-01-15 00:00:00

以上PHP时间戳函数示例可知,strtotime能将任何英文文本的日期时间描述解析为Unix时间戳,我们结合mktime()或date()格式化日期时间获取指定的时间戳,实现所需要的日期时间。

示例:

<?php
 
/***************************************************************************
 *
 * Copyright (c) 2011 Baidu.com, Inc. All Rights Reserved
 * $Id$
 *
 **************************************************************************/
 
 
 
//时间戳转日期
$date_time_array=getdate(1297845628);//1311177600  1316865566
$hours=$date_time_array["hours"];
$minutes=$date_time_array["minutes"];
$seconds=$date_time_array["seconds"];
$month=$date_time_array["mon"];
$day=$date_time_array["mday"];
$year=$date_time_array["year"];
 
echo"year:$year\nmonth:$month\nday:$day\nhour:$hours\nminutes:$minutes\nseconds:$seconds\n";
 
//正常日期转时间戳
echomktime(0, 0, 0, 9, 18, 2011) ."\n";
echomktime(0, 0, 0, 9, 25, 2011) ."\n";
 
/*
time();
是获得当前时间,但获得的是一整型
*/
//可以对此进行格式化
echo"time()显示年月日时分秒:".date("Y-m-d H:i:s", time()) ."\n";
//这样连时,分秒一起显示
echo"time()只显示年月日:".date("Y-m-d ", time()) ."\n";//只年示年月日
 
echo"时间戳格式化:".date("Y-m-d H:i:s", 1297845628) ."\n";//直接使用时间戳
 
/* vim: set ts=4 sw=4 sts=4 tw=100 noet: */

?>

定义和用法

mktime() 函数返回一个日期的 Unix 时间戳。

参数总是表示 GMT 日期,因此 is_dst 对结果没有影响。

参数可以从右到左依次空着,空着的参数会被设为相应的当前 GMT 值。

语法

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

提示和注释

注释:在 PHP 5.1 之前,如果该函数的参数非法,则会返回 false。

例子

mktime() 函数对于日期运算和验证非常有用。它可以自动校正越界的输入:

输出:

Jan-05-2002Feb-01-2002Jan-01-2001Jan-01-1999

转载于:https://my.oschina.net/u/919580/blog/133171

你可能感兴趣的文章
Change DNS Helper - 轻松帮你更换20种以上DNS服务器
查看>>
混合云使用不能盲目:学习最佳实践是王道
查看>>
程序员测试微信小程序后,发现这群人才能赚到钱
查看>>
Facebook的算法缺陷与扎克伯格的媒体窘迫
查看>>
Cat.0实现更低功耗、更低成本物联网设备连接到LTE网络
查看>>
在外面吃饭,你会用开水烫餐具吗?事实太吓人了!
查看>>
DBImport V3.1 数据互导工具及文档生成器更新发布
查看>>
欧盟与美国的个人数据传输保护协议尘埃落定
查看>>
成都大数据三大平台正式上线
查看>>
华为与GE建立战略合作伙伴关系,加速工业物联网联合创新
查看>>
完善机制强化安全保障能力建设
查看>>
CIO访谈实录:英国电讯媒体集团首席信息官亨利·科恩
查看>>
微软称赞Windows Defender,卡巴斯基则嘲笑其没用
查看>>
浅谈软件测试用例
查看>>
每家企业应该知道的10家SaaS初创公司
查看>>
各种JDBC连接数据库的常用代码
查看>>
得大数据者得量化投资
查看>>
颠覆传统 微服务器剑指数据中心
查看>>
UCSB研发量子传感技术,具备纳米级别的空间分辨率
查看>>
智慧城市,美好生活刚开始
查看>>