1

前方:

この件に関する既存の質問/回答をスキャンしました。これは重複した質問ではありません。受け入れられた回答から有効な解決策が見つかりません。

私が確認した主な質問/回答は、次の場所にあります: PHP を使用して 2 つの日付の差を計算する方法は?

必要なもの:

PHP バージョン 5.2 で動作する、年、月、日で表される 2 つの日付の差の計算。

<?php
$current_date = date('d-M-Y');
$future_date = '2012-11-01';
?>

私が試したこと:

  1. 私がオンラインで見つけたほとんどの回答は、うるう年を考慮していないという点で正確ではないようです。
  2. DateTime->diff() はphp 5.3+であるため、この高評価の回答は機能しません。
  3. この受け入れられた回答 (つまり、PHP 5.2 を対象としたコードの 2 番目のブロック) は、次のように解析されます。

    配列 ( [y] => 25 [m] => 11 [d] => 7 [h] => 3 [i] => 15 [s] => 19 [反転] => 0 [日] => 9473 ) 配列 ( [y] => 25 [m] => 11 [d] => 7 [h] => 3 [i] => 15 [s] => 19 [反転] => 1 [日] => 9473 )

コードを間違って適用したのか、単に配列の操作方法を知らないだけなのかはわかりません。

4

2 に答える 2

1

のマニュアルページでDateTime::diff()このコメントを見たことがありますか?

于 2012-10-17T23:07:01.313 に答える
0

私も同じ作業をしていました。これはうまくいくかもしれません!まず、日付を作成する必要があります。

$date1=date_create("2012-03-15");
$date2=date_create("2013-03-15");

そのためのマニュアルはこちら! 次に、日付の違いを見つけて、目的の結果を印刷するには、これを使用してください!

$dif=date_diff($date1,$date2); //Will calculate the difference between two dates.
$days = $dif->days; //Days
$years = round($age/365); //Converting days to years and rounding them up.
$months = $difference/30; // Converting to months.
echo "Days =>".$days;
echo "Years =>".$years;
echo "Months =>".$months;

これにはうるう年を計算する方法がないため、得られる答えは正確ではありませんが、精度が求めているものではない場合、これは間違いなく機能します! 私はこの質問がずっと前に尋ねられたことを知っていますが、私の防御のために私はちょうどそれを見ました!

于 2014-12-14T13:59:28.093 に答える