PHP PHP 日付の間隔を求める

-


Topページ  >  お勉強  >  PHP  >  日付の間隔を求める 

日付の間隔を求める

PHPで、日付の間隔を求めるような便利な関数は用意されていません。

そこで、mktime関数でUnixTimeを取得して、差分の秒数を求めて日数に変換することにより算出します。

UnixTimeとは、1970年1月1日00:00:00GMT から対象の時刻までの通算秒を表す整数です。





1. 日付間隔算出例

この例では、2009年3月6日0時0分0秒〜2009年3月9日0時0分0秒までの日付間隔を算出しています。

// 比較日付を区切り文字で配列化
$fromDate = explode("-", "2009-03-06");
$toDate = explode("-", "2009-03-09");

// 配列化した日付からUnixTimeを算出する
$fromDateTime = mktime(0, 0, 0, $fromDate[1], $fromDate[2], $fromDate[0]);// 1236265200
$toDateTime = mktime(0, 0, 0, $toDate[1], $toDate[2], $toDate[0]);        // 1236524400

// 引き算を行い、差分の秒数を算出する
//(1236524400 - 1236265200 = 259200)
$intervalTime = $toDateTime - $fromDateTime;

// 秒を日単位に変換する(1時間は3600秒→24時間)
//(259200 ÷ 3600 ÷ 24 = 3)
$intervalDay = $intervalTime / 3600 / 24;

// 日付間隔を表示する
// この例の場合、"3日" と表示される
print $intervalDay . "日";





Topページ  >  お勉強  >  PHP  >  日付の間隔を求める 






-