两个日期之间的月差异 - yyyymm格式

时间:2014-04-17 07:23:22

标签: php date

我想计算两个yyyymm日期之间的月差异。我在下面有这个功能,但只有当我使用yyyy-mm时它才有效。

$date1 = new DateTime('2014-01');
$date2 = new DateTime('2013-06');
$mth = mthdiff($date1, $date2);

function mthdiff($date1,$date2){


$diff = $date1->diff($date2);

return (($diff->format('%y') * 12) + $diff->format('%m'));

}

1 个答案:

答案 0 :(得分:3)

修改您的功能以使用DateTime::createFromFormat()

function mthdiff($date1,$date2){
    $d1 = DateTime::createFromFormat('Ym', $date1);
    $d2 = DateTime::createFromFormat('Ym', $date2);
    $diff = $d1->diff($d2);
    return (($diff->format('%y') * 12) + $diff->format('%m'));
}

用法:

echo mthdiff('201401', '201306');

输出:

7

Demo