«

php获取某段时间内每个月的方法,返回由这些月份组成的数组

时间:2024-1-21 13:03     作者:韩俊     分类: PHP


php获取某段时间内每个月的方法,返回由这些月份组成的数组,具体代码如下:

/** 
* 生成从开始月份到结束月份的月份数组
* @param int $start 开始时间戳
* @param int $end 结束时间戳
*/ 
function monthList($start,$end){
    if(!is_numeric($start)||!is_numeric($end)||($end<=$start)) return '';
    $start=date('Y-m',$start);
    $end=date('Y-m',$end);
    //转为时间戳
    $start=strtotime($start.'-01');
    $end=strtotime($end.'-01');
    $i=0;//http://www.maopiaopiao.com/php-function/224.html
    $d=array();
    while($start<=$end){
        //这里累加每个月的的总秒数 计算公式:上一月1号的时间戳秒数减去当前月的时间戳秒数
        $d[$i]=trim(date('Y-m',$start),' ');
        $start+=strtotime('+1 month',$start)-$start;
        $i++;
    } 
    return $d;
}

例如:

echo '<pre>';print_r(monthList(1395283229,1398960000));

结果将得到如下:

Array
(
    [0] => 2014-03
    [1] => 2014-04
    [2] => 2014-05
)

标签: php php教程

热门推荐