96

PHPで日付の違いを計算する簡単な方法はありますか? 例えば:

$date1 = '2009-11-12 12:09:08';
$date2 = '2009-12-01 08:20:11';

次に、$date2 から $date1 を引いた計算を行います。

私はphp.netのドキュメントを読みましたが、うまくいきません。それを行う簡単な方法はありますか?

4

3 に答える 3

208

以下の例のように、date->diff関数を使用することをお勧めします。

   $dStart = new DateTime('2012-07-26');
   $dEnd  = new DateTime('2012-08-26');
   $dDiff = $dStart->diff($dEnd);
   echo $dDiff->format('%r%a'); // use for point out relation: smaller/greater

http://www.php.net/manual/en/datetime.diff.phpを参照してください。

于 2012-07-26T11:06:08.137 に答える
55

strtotimeは、日付文字列をUNIXタイムスタンプに変換します。(UNIXエポックからの秒数。

$ts1 = strtotime($date1);
$ts2 = strtotime($date2);

$seconds_diff = $ts2 - $ts1;
于 2009-12-21T14:18:15.727 に答える
22

以下のコードは、2 つの日付の差を取り出すことで、日数を出力します。

$str = "Jul 02 2013";
$str = strtotime(date("M d Y ")) - (strtotime($str));
echo floor($str/3600/24);
于 2013-07-03T09:44:23.893 に答える