当前位置: 首页 > 面试题库 >

PHP strtotime +1个月增加一个额外的月份

曹昊焱
2023-03-14
问题内容

我有一个简单的变量,今天增加了一个月:

$endOfCycle = date("Y-m", strtotime("+1 month"));

今天是2013年1月,所以我希望能回到2013-02,但我却能获得2013-03。我不知道为什么要跳到三月。


问题答案:

跳到3月是因为今天是1月29日,加上一个月就表示2月29日(该日期不存在),因此它将移至下一个有效日期。

这也将在很多个月的31日发生,但在1月到2月的情况下显然更明显,因为2月较短。

如果您对月份中的某天不感兴趣,而只希望它给出下个月,则应将输入日期指定为当前月份的第一天。如果您增加一个月,这将始终为您提供正确的答案。

出于同样的原因,如果要始终获取下个月的最后一天,则应从计算所需月份之后的第一个月的第一天开始,再减去一天。



 类似资料:
  • 问题内容: 假设我有一个以下格式的日期:2010-12-11(年一日) 使用PHP,我想将日期增加一个月,并且我希望年份可以在必要时自动增加(即,从2012年12月到2013年1月增加)。 问候。 问题答案:

  • 我目前正在处理一个问题,其中DateTime.addMonths(iStartDateH,DurationAsInt)正在增加一天。它在内部使用格鲁吉亚日历。我们目前正在这个项目中使用Java 5,例如:24个月 我尝试检查完整的日期/时间差异,并将其作为730.77393518518518555请帮助。

  • 我在我的应用程序中发现了一个奇怪的错误,每次我在JDatePicker上设置时,它都会比我希望设置的日期增加一个月。。更具体地说,我发现这个错误的原因是LocalDate对象月份与日期不一样?我知道这听起来很奇怪,但这确实是问题的原因。 上面的代码会将日期选择器设置为,而不是(因此会增加1个月)。经过进一步的调查,我注意到当我将这个LocalDate转换为Date时,一切都开始正常工作,尽管。。。

  • 问题 你需要计算相关日期范围例如“上一个月”,“下一个月”。 解决方案 添加或减去当月的数字,JavaScript 的日期构造函数会修复数学知识。 # these examples were written in GMT-6 # Note that these examples WILL work in January! now = new Date # => "Sun, 08 May 2011

  • 问题内容: 我知道PHP函数的有害行为 时间 例如,向以下日期添加一个月(+1个月):31.01.2011-> 03.03.2011 我 知道这不是正式的 PHP错误 ,并且该解决方案背后有一些争论,但至少对我而言,这种行为造成了很多时间的浪费(过去和现在),我个人讨厌它。 我发现甚至更陌生的是,例如: MySQL: DATE_ADD(‘2011-01-31’,INTERVAL 1 MONTH)返

  • 这是我尝试过的: 然而,我得到以下错误: