私は、日付を含む2つの列を持つmySQLテーブルを持っています。 whileループは、$ start_dateと$ end_dateの変数をそれぞれ変数に入れ、それらの間の時間を計算し、diff()を使って新しい変数$ since_startに入れます。私がdiff()を使用して理解している限り、DateIntervalクラスになります。ループ内で増分DateInterval
今私は 'while'ループの間に合計を構築し、それを$ total_received変数に格納したいと思います。私が試した最後のものは、ネットとstackoverflowのを検索した後、
$total_received->add(new DateInterval($since_start));
だった。しかし、私はすべての出力を得るいけないと、それは、間違っているようです。私は間違っていることを得ることはありませんが、私はこの行で何をしているのか正確には分かりません。正直で、どこを見なければいいのか分かりません。私はグーグルの答えを見つけることができればと思っています。それはずっと早いですが、できませんでした。私はあなたが助けることを願っています
これまでに$ total_received変数が定義されていた完全なループがあります。
//Set variable for lifetime received total
$total_received = 0;
if ($result->num_rows > 0) {
// Output data of each row
while($row = $result->fetch_assoc()) {
echo
$row["id"] ." "
. $row["donor"]." ";
$start_date = new DateTime($row["start"]);
$end_date = new DateTime($row["end"]);
$since_start = $start_date->diff($end_date);
$total_received->add(new DateInterval($since_start));
echo $since_start->format('%h')." Hours ".$since_start->format('%i')." Minutes "
. $row["subject"] ." "
. $row["complete"] ."<br>";
}
} else {
echo "No lifetime received yet";
}
echo $total_received->format('%h')." Hours ".$total_received->format('%i')." Minutes ";
ありがとうございます!