php - 在php中获取包含月份开始日期和结束日期的每月数组

标签 php arrays date

<分区>

我们已经创建了 Weekly 数组

喜欢

[1] => 数组 ( [开始] => 2017-01-01 [结束] => 2017-01-07 )

但是我们需要每月的数组开始日期和结束日期

就这样

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
           )

   )

最佳答案

这里我们使用 DateTimeDateInterval以达到预期的产出。

Try this code snippet here

<?php
ini_set('display_errors', 1);

$startDate="2017-01-01";
$endDate="2017-06-01";

$dates=array();
while($startDate!=$endDate)
{
    $monthEndDate=new DateTime($startDate);
    $monthEndDate->add(new DateInterval("P1M"));//adding one month each time we iterate
    $dates[]=array("start" => $startDate,
                   "end" => $monthEndDate->format("Y-m-d"));
    $startDate=$monthEndDate->format("Y-m-d");//changing start date
}
print_r($dates);

关于php - 在php中获取包含月份开始日期和结束日期的每月数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45810233/

相关文章:

名称中带点的 PHP GET url 参数

php - 代码使用的执行时间和内存

c++ - 如何在C++中预订剧院座位?

ios - 使用 NSPredicate 在一次搜索 iOS swift 中搜索多个单词

vb.net - vb.net 中的 For 循环中的日期

php - PHP —未定义索引:

php - 输入时提交

c# - 创建子数组而不进行复制和/或分配

javascript - 如何验证字符串值的格式是否为 "\/Date(1239018869048)\/"?

ruby-on-rails - 根据年龄或日期编写 rspec 测试