我需要计算出这样的日期之间的月数:
$inputDate = '09/08/2016';
以 MM/DD/YYYY 格式输入,以及当前日期,例如:
$today = date("m/d/Y");
我一直在查看date_diff但似乎无法在这里获得语法并感谢这里的任何帮助。
最佳答案
<罢工>罢工>
<罢工>$datetime1 = new DateTime();
$datetime2 = new DateTime('09/08/2016');
$interval = $datetime1->diff($datetime2);
$months = $interval->format('%m months'); # you can also use %a days %h hours %i minutes %s seconds
echo $months;
# 8 months
# optimally you can use:
# echo $datetime1->diff($datetime2)->y*12;
# or
# echo $interval->m
罢工><罢工>罢工>
根据评论更新:
$datetime1 = new DateTime();
$datetime2 = new DateTime('09/08/2015');
$interval = $datetime1->diff($datetime2);
echo (($interval->format('%y') * 12) + $interval->format('%m')) . " full months difference";
注意:
一个DateInterval Object
看起来像:
DateInterval Object
(
[y] => 3
[m] => 5
[d] => 15
[h] => 0
[i] => 0
[s] => 0
[invert] => 0
[days] => 1264
)
这就是为什么我们必须乘以 years * 12
的数量并添加 months
为了得到几个月的差异。奇怪,但这就是它的工作原理......
关于PHP - 计算日期和当前日期之间的月数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44036591/