【问题标题】:Adding month in php?在php中添加月份?
【发布时间】:2018-05-31 11:09:42
【问题描述】:

月份添加问题

<?php 

$showMonthsQty = 3;
for($i = (1-$showMonthsQty); $i <= 0; $i++) 
{
    echo $date = date("Y-m-1", strtotime(" +$i months"));

}
?>

当它运行时,我没有得到想要的答案。

输出

2018-03-1 
2018-05-1  <----------error
2018-05-1

但我需要的输出是:

2018-03-1    
2018-04-1 
2018-05-1

我怎样才能得到这个?请帮助!... tnx 提前...:)

【问题讨论】:

标签: php


【解决方案1】:

您可以使用DateTimeDateInterval

$showMonthsQty = 3;
for($i = $showMonthsQty-1; $i >= 0; $i--) 
{
    $date = new \DateTime(date("Y-m-1")); // First day of the current month
    $date->sub(new \DateInterval(sprintf('P%sM', $i))); // Substract $i month (P%dM)

    echo $date->format('Y-m-d')."<br />";
}

输出:

2018-03-01
2018-04-01
2018-05-01

这是你要找的吗?

【讨论】:

  • 我在做什么?当我使用碳法时。同样的问题正在发生。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多