昨年の各月のデータベースの列の合計を印刷したいと思います。これを行うためにこれまでに持っているコードは次のとおりです。
$month = date("n");
$year = date("Y");
$loop = 12;
while($loop>1) {
$first = mktime(0,0,0,$month,1,$year);
$last = mktime(23,59,00,$month+1,0,$year);
$spendingData = mysql_query("SELECT * FROM spending WHERE date BETWEEN $first AND $last") or die(mysql_error());
$totalMonth = 0;
while($spending = mysql_fetch_array($spendingData))
{
$totalMonth = $totalMonth + $spending['amount'];
}
print "£".$totalMonth;
$loop = $loop-1;
print "<br>";
}
私の質問は、ループ内で、毎月の時間をどのように調整するかです。タイムスタンプから1か月分の秒数をとることを考えましたが、毎月何日あるかわからないため、これが機能するとは思いません。また、これは何年も考慮されないので、月の数字から1を取り続けることはできないと思います。また、新しい月ごとに数値が変わるため、数値をハードコーディングしたくありません。
どうすればこれを達成できますか?
ありがとうございました