生成指定时间内的月份区间 例如:2007-04到 当前月份的上一个月,代码如下:
<?php
$startTime = strtotime('2007-04');
// 开始时间
$endTime = strtotime(date("Y-m",strtotime("-1 month")));
//结束时间
$monarr = array();
$monarr[] = '2007-04';
// 默认将开始时间添加进去,有需要的情况下自己更改;
while( ($startTime = strtotime('+1 month', $startTime)) <= $endTime) {
$monarr[] = date('Y-m',$startTime);
// 取得递增月;
}
print_r($monarr);
?>
打印出来的效果图如下:
下面是生成日期区间的代码:
<?php
function createYmdRange($ymdStart, $ymdEnd = true, $range = 86400) {
if ($ymdEnd === true) $ymdEnd = date('Y-m-d');
return array_map(function ($time) {
return date('Y-m-d', $time);
}
, range(strtotime($ymdStart), strtotime($ymdEnd), $range));
}
//调用
$arr=createYmdRange('2019-01-01');
var_dump($arr);
?>
打印结果如下:
以上代码正好用到,直接分享出来,也算是个笔记,以后使用方便!