0
說,我和2012-03-01保存2013年2月1日在數據庫。當計算兩者之間的月數時,我想要12個月而不是確切的天數或確切的月數(例如11.92個月) 如何在php中執行此操作?
說,我和2012-03-01保存2013年2月1日在數據庫。當計算兩者之間的月數時,我想要12個月而不是確切的天數或確切的月數(例如11.92個月) 如何在php中執行此操作?
DateTime使這個容易(需要PHP 5.3或更大)
$datetime1 = new DateTime('2012-03-01');
$datetime2 = new DateTime('2013-02-01');
$interval = $datetime2->diff($datetime1);
echo (($interval->format('%y') * 12) + $interval->format('%m'));
嘗試這種情況:
<?php
$d1 = date_create('2013-01-31');
$d2= date_create('2013-05-12');
$interval= date_diff($d1, $d2);
echo $interval->format('%m months');
?>
貌似[此](http://stackoverflow.com/a/2681841/679449 )回答。也許OP應該使用搜索? – Kermit
這是錯誤的。這忽略了多年。你必須做'(($ interval-> format('%y')* 12)+ $ interval-> format('%m'))' – gondo