PHP中每周的日期范围

时间:2015-02-12 09:26:28

标签: php

你可以帮助我了解如何获得两年之间的每周范围。

例如:

选定日期:2014年12月16日至2015年1月15日

每周范围应该是:

2014年12月16日至2014年12月21日 2014年12月22日至2014年12月28日 2014年12月29日至2015年1月4日
2015年1月5日至2015年1月11日 2015年1月12日至2015年1月15日

有类似的解决方案

Get all week start date and end date within a date range in php

但这在几年之间不起作用,它给出了不正确的每周范围。

1 个答案:

答案 0 :(得分:1)

尝试使用此代码

$p = new DatePeriod(
            new DateTime('2014-16-12'), 
            new DateInterval('P1W'), 
            new DateTime('2015-15-01')
            );
        $dates=array();
        foreach ($p as $w) {
            $date_week= $w->format('Y-m-d');
            $date_week_7= strtotime($date_week);
            $dates[] =date('Y-m-d',strtotime("+7 day",  $date_week_7));

        }

$ dates数组将包含日期之间的所有工作日