关于strtotime()时间戳运用总结

【今日推荐】:为什么一到面试就懵逼!>>> hot3.png

  • 目录
  • 1.前言
  • 2.获取基于当前时间戳的其他时间
  • 3.获取基于指定时间戳的其他时间 
  • 4.PHP计算两天的时间差

1.前言

最近做项目的时候遇到了一个坑,应该说是知识点的不熟悉,我遇到的坑就是如果strtotime()函数不指定时间戳,就会以当前时间戳为准

我的错误写法是:

date(‘Y-m-d’,strtotime(‘2019-07-25’)+strtotime("+1 day"));

上面这样写肯定错了,因为strtotime("+1 day")是获得当前时间戳+1天

正确的写法是:

$t=1483967416;//指定时间戳

echo $dt=date('Y-m-d H:i:s',$t);//2017-01-09 21:10:16

//$dt是指定时间戳格式化后的日期

echo date('Y-m-d H:i:s',strtotime("$dt+1day"));//指定时间戳+1天

下面是对时间戳的一些总结,这也是面试题常考的东西

2.获取基于当前时间戳的其他时间   

date_default_timezone_set('PRC'); //默认时区     

echo "今天:",date("Y-m-d",time()),"<br>";     

echo "今天:",date("Y-m-d",strtotime("18 june 2008")),"<br>";     

echo "昨天:",date("Y-m-d",strtotime("-1 day")), "<br>";     

echo "明天:",date("Y-m-d",strtotime("+1 day")), "<br>";     

echo "一周后:",date("Y-m-d",strtotime("+1 week")), "<br>";     

echo "一周零两天四小时两秒后:",date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds")), "<br>";     

echo "下个星期四:",date("Y-m-d",strtotime("next Thursday")), "<br>";     

echo "上个周一:".date("Y-m-d",strtotime("last Monday"))."<br>";     

echo "一个月前:".date("Y-m-d",strtotime("last month"))."<br>";     

echo "一个月后:".date("Y-m-d",strtotime("+1 month"))."<br>";     

echo "十年后:".date("Y-m-d",strtotime("+10 year"))."<br>";     

3.获取基于指定时间戳的其他时间 

$t=1483967416;//指定时间戳

echo $dt=date('Y-m-d H:i:s',$t);//2017-01-09 21:10:16//$dt是指定时间戳格式化后的日期

/*方法一*/

echo date('Y-m-d H:i:s',$t+1*24*60*60);//指定时间戳+1天 2017-01-10 21:10:16

echo date('Y-m-d H:i:s',$t+365*24*60*60);//指定时间戳+1年 2018-01-09 21:10:16

/*方法二*/

echo date('Y-m-d H:i:s',strtotime("$dt+1day"));//指定时间戳+1天 2017-01-10 21:10:16

echo date('Y-m-d H:i:s',strtotime("$dt+1year"));//指定时间戳+1年 2018-01-09 21:10:16

/*方法三*/

echo date('Y-m-d H:i:s',strtotime("+1day",$t));//指定时间戳+1天 2017-01-10 21:10:16

echo date('Y-m-d H:i:s',strtotime("+1year",$t));//指定时间戳+1年 2018-01-09 21:10:16

4.PHP计算两天的时间差

//计算出这两个时间相差几天

$time_differ=ceil((strtotime($nowtime)-strtotime($lasttime))/86400)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值