php前一个月日期,php – 如何获取前一个月和年相对于今天,使用strtotime和日期?...

我需要获得上一个月和一年,相对于当前日期。

但是,请参阅以下示例。

// Today is 2011-03-30

echo date('Y-m-d', strtotime('last month'));

// Output:

2011-03-02

这个行为是可以理解的(到某一点),由于在2月和3月不同的天数,上面的例子中的代码是我需要的,但在每月的1月和28日之间正确工作只有100%。

那么,如何获得上个月和年份(认为日期(“Y-m”))以最优雅的方式尽可能,这一年的每一天工作?最佳解决方案将基于strtotime参数解析。

更新。澄清要求一点。

我有一段代码,得到一些统计数据,过去几个月,但我首先显示上个月的统计,然后加载其他月份需要时。这是预期的目的。所以,在这个月,我想找出哪个月 – 我应该为了加载前一个月的统计。

我还有一个代码是时区感知(现在不是真的很重要),并接受strtotime兼容字符串作为输入(以初始化内部日期),然后允许日期/时间进行调整,还使用strtotime兼容字符串。

我知道它可以做一些条件和基本的数学,但是这是非常混乱,与此相比,例如(如果它工作正常,当然):

echo tz::date('last month')->format('Y-d')

所以,我只需要前一个月和一年,在strtotime兼容的方式。

答案(感谢,@dnagirl):

// Today is 2011-03-30

echo date('Y-m-d', strtotime('first day of last month')); // Output: 2011-02-01

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值