在php中获取每月的数组,包括每月的开始日期和结束日期

5 浏览
0 Comments

在php中获取每月的数组,包括每月的开始日期和结束日期

我们已经创建了每周的数组,如下所示:\n[1] => Array\n (\n [start] => 2017-01-01\n [end] => 2017-01-07\n )\n但是我们需要每月的数组,包含每个月的起始日期和结束日期,就像这样:\n

Array
   (
       [1] => Array
           (
               [start] => 2017-01-01
               [end] => 2017-02-01
           )
       [2] => Array
           (
               [start] => 2017-02-01
               [end] => 2017-03-01
           )
       [3] => Array
           (
               [start] => 2017-03-01
               [end] => 2017-04-01
           )
       [4] => Array
           (
               [start] => 2017-04-01
               [end] => 2017-05-01
           )
       [5] => Array
           (
               [start] => 2017-05-01
               [end] => 2017-06-01
           )
   )

0
0 Comments

原因:这个问题的出现是因为需要在PHP中获取给定时间范围内每个月的开始日期和结束日期。

解决方法:使用DateTime和DateInterval类来实现预期的输出。以下是解决方法的代码:

add(new DateInterval("P1M"));//每次迭代时增加一个月
    $dates[]=array("start" => $startDate,
                   "end" => $monthEndDate->format("Y-m-d"));
    $startDate=$monthEndDate->format("Y-m-d");//改变开始日期
}
print_r($dates);

以上代码将在给定的时间范围内循环,并在每个月的开始日期和结束日期之间创建一个包含日期的数组。最后,使用print_r函数打印出结果。

0