PHP获得两个日期之间的月份, 如: 2018-2-15, 2018-4-15, 得到的结果是3个月 2月,3月,4月

//开始时间
$begin="2013-2-15";
//结束时间
$end="2015-4-16";
//转换成时间戳
//得到中间的整月份 如:2-15, 4-15, 2月,3月,4月

function getMonNums($begin, $end)
{
$nums = 0;
$b = explode("-",$begin);
$e = explode("-",$end);
$years = $e[0] - $b[0] ;
if(!$years){
//年份相等
$nums = $e[1] - $b[1] + 1;
}
else{
if($years == 1){
//一年内, 开始与12月之间的月份 + 1, 再加结束年的月份
$nums = 12 - $b[1] + 1 + $e[1];
}
else{
//超过一年的, 需要差的年份-1 乘以 12
$nums = ($years - 1) * 12 + 12 - $b[1] + 1 + $e[1];
}
}
return $nums;
}
echo getMonNums($begin,$end);

标签: none

评论已关闭