English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

PHP 基礎チュートリアル

PHP 高級チュートリアル

PHP & MySQL

PHP リファレンスマニュアル

PHP date_diff() ファンクションの使い方と例

PHP Date & Time ファンクションマニュアル

date_diff()関数は2つのDateTimeオブジェクト間の差を返します。

定義と使い方

date_diff()関数はDateTime::diffの別名です。2つのDateTimeオブジェクトを引数に取り、それらの差を計算します。

文法

date_diff($datetime1, $datetime2[, $absolute])

パラメータ

番号パラメータ及び説明
1

datetime1(必須)

これは比較する日付の1つを示すDateTimeオブジェクトです。

2

$datetime2 (必須)

これは比較する日付の1つを示すDateTimeオブジェクトです。

3

$absolute (オプション)

真の布尔値、間隔差が正のべきかどうかを示します

返り値

PHP date_diff()関数はDateIntervalオブジェクトを返し、2つの指定された日付の差を指定します。失敗すると、この関数はfalseで導入されました。

PHPバージョン

この関数は最初にPHPバージョン5.3.0で導入され、すべての上位バージョンで使用できます。

オンラインサンプル

以下の例では、date_diff()関数の使い方-

<?php
   //DateTimeオブジェクトを作成します
   $date1 = date_create("25-09-1989");
   $date2 = date_create("1-09-2012");
   $interval = date_diff($date1, $date2);
   print($interval->format('%Y years %d days'));
?>
テストを見て‹/›

出力結果

22 years 7 days

オンラインサンプル

以下の例では、指定された日付と現在の日付の差を計算しています

<?php
   $date1 = date_create("25-09-1989");
   $date2 = date_create();
   $interval = date_diff($date1, $date2);
   print($interval->format('%Y 年 %d 日'));  
?>
テストを見て‹/›

出力結果

30 年 14 天

オンラインサンプル

2つの日期の差を計算する:

<?php
   //DateTimeオブジェクトを作成します
   $date1 = date_create("2012-05-09");
   $date2 = date_create("2014-01-09");
   $interval = date_diff($date1, $date2);
   print($interval->format('%Y 年 %m 月 %d 日'));
   print("\n");
   $date3 = date_create("1989-08-25");
   $date4 = date_create("2012-03-19");
   $interval = date_diff($date3, $date4);
   print($interval->format('%Y 年 %m 月 %d 日'));
   print("\n");
   $date5 = date_create("2002-11-16");
   $date6 = date_create("2014-12-23");
   $interval = date_diff($date5, $date6);
   print($interval->format('%Y 年 %m 月 %d 日'));
   print("\n");
   $date7 = date_create("1989-0-09");
   $date8 = date_create("2013-05-14");
   $interval = date_diff($date7, $date8);
   print($interval->format('%Y 年 %m 月 %d 日'));
?>
テストを見て‹/›

出力結果

01 年 8 月 0 日
22 年 6 月 23 天
12 年 1 月 7 天
24 年 5 月 5 天