php获取最近n个月每月的开始时间和结束时间,然后将结果组成数组。
/** * 获取某一个时间点之前 N 个月每月的开始时间和结束时间 * @param int $recent 月数 * @param int $time 截止时间 * @return array */ function getRecentMonth($recent = 6, $time = 0) { !$time && $time = time(); $list = []; for ($i = $recent; $i > 0; --$i) { $t = strtotime("-$i month", $time); $list[] = explode('/', date('Y-m-01', $t) . '/' . date('Y-m-', $t) . date('t', $t)); } return $list; }
print_r(getRecentMonth(2, strtotime('2018-6')));
输出:
Array
(
[0] => Array
(
[0] => 2018-04-01
[1] => 2018-04-30
)
[1] => Array
(
[0] => 2018-05-01
[1] => 2018-05-31
)
)