两个日期之间的月份差-yyyymm格式 [英] Month difference between two dates - yyyymm format

查看:42
本文介绍了两个日期之间的月份差-yyyymm格式的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想计算两个yyyymm日期之间的月份差.我在下面有此功能,但是仅当我使用yyyy-mm时,该功能才有效.

I wanted to calculate the month difference between two yyyymm dates. I have this function below, however it only works if I use yyyy-mm instead.

$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'));

}

推荐答案

修改您的函数以使用

Modify your function to use 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

演示

这篇关于两个日期之间的月份差-yyyymm格式的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆