DateInterval
イベントの平均合計期間 (形式)を計算する方法を探しています。オブジェクトに期間がありDateInterval
ますが、それらを合計して平均を計算する必要があります。これまで見てきたソリューションでは、さまざまな金額を秒単位に変換して合計していましたが、最終的なフォームをフォームで提示する必要がありDateTime
ます。
平均期間を値として表示するにはどうすればよいDateTime
ですか?
編集:
次のように期間を設定します (ここで$busyTime
、 と$freeTime
は DateTime オブジェクトです)。
$timetable[$siteID]->duration = $timetable[$siteID]->freeTime->diff($timetable[$siteID]->busyTime,true); //compare time, force to absolute (true)
次に、次のように期間を合計しようとしています。
$totalDuration += $timetable[$siteID]->duration;
この場合、合計期間と数えているアイテムの数の両方で 129 を取得します。これは、それらがすべて 1 の値であることを意味します。ほんの数秒以上を処理できるようにしたいです。それがここで起こっているかどうかはわかりません。
私はそれがうまくいくとは思っていませんでしたが、次のことも試しました:
$totalDuration += $timetable[$siteID]->duration->format("Y-m-d H:i:s");
最後の 1 つは 0 です。