php:指定した二つの日付の差を調べる方法

phpで二つの日付が何日間離れているか調べる。
今回は関数にして二つの日付を渡し、日数を返すように作成。

※UNIXタイムスタンプは、「1970-01-01 00:00:00」からの経過秒数。
※日数に変換する際は、60(秒)×60(分)×24(時)で割ることで日数を求めている

■ 使用方法

<?php

function day_diff($date1, $date2) {

    // 日付をUNIXタイムスタンプに変換
    $timestamp1 = strtotime($date1);
    $timestamp2 = strtotime($date2);

    // 何秒離れているかを計算
    $seconddiff = abs($timestamp2 - $timestamp1);

    // 日数に変換
    $daydiff = $seconddiff / (60 * 60 * 24);

    // 戻り値
    return $daydiff;

}

// 日付を関数に渡す
$day = day_diff('2012-10-10', '2012-12-24');

echo $day;
?>

■ 出力結果

75
  • このエントリーをはてなブックマークに追加

php:指定した二つの日付の差を調べる方法” への2件のコメント

  1. 2つの日付の差を計算してみたのですが、2038年以降の値が負になってしまうのですが、これを解決する方法はないでしょうか。ご存じでしたら教えてください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です