PHP を使用して 2 つの日付の差を計算するにはどうすればよいでしょうか? 質問する

PHP を使用して 2 つの日付の差を計算するにはどうすればよいでしょうか? 質問する

フォームの日付が 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 DateTime::diff マニュアル

マニュアルより:

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)

おすすめ記事