フォームの日付が 2 つあります。
Start Date: 2007-03-24
End Date: 2009-06-26
ここで、次の形式でこれら 2 つの違いを見つける必要があります。
2 years, 3 months and 2 days
PHP でこれを実行するにはどうすればよいですか?
ベストアンサー1
DateTime および DateInterval オブジェクトを使用することをお勧めします。
$date1 = new DateTime("2007-03-24");
$date2 = new DateTime("2009-06-26");
$interval = $date1->diff($date2);
echo "difference " . $interval->y . " years, " . $interval->m." months, ".$interval->d." days ";
// shows the total amount of days (not divided into years, months and days like above)
echo "difference " . $interval->days . " days ";
マニュアルより:
PHP 5.2.2 [2007 年 5 月] 以降では、比較演算子を使用して DateTime オブジェクトを比較できます。
$date1 = new DateTime("now");
$date2 = new DateTime("tomorrow");
var_dump($date1 == $date2); // bool(false)
var_dump($date1 < $date2); // bool(true)
var_dump($date1 > $date2); // bool(false)