两个日期之间的月份差-yyyymm格式 [英] Month difference between two dates - yyyymm format
本文介绍了两个日期之间的月份差-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屋!
查看全文