- 変数は関数内ならいつでも何処でも、定義したら以降は有効ですよ
例えば
if ($isSuccess) {
$a = 123;
}
echo $a;
これを実行すると「123」が表示されるわけですね。あら便利っ!そして、今日ほんのりはまったのがこれです
$testArray = Array(
0 => Array(1, 2, 3),
1 => Array(1, 2, 3)
);
foreach($testArray as $index => $valueArray) {
foreach($valueArray as $value) {
$subTotal += $value;
}
$subTotalArray[$index] = $subTotal;
}
print_r($subTotalArray);
$totalの値が足し込まれ続けておかしな値になってしまいます。$testArray = Array(
0 => Array(1, 2, 3),
1 => Array(1, 2, 3)
);
foreach($testArray as $index => $valueArray) {
$subTotal = 0; // ←ここで初期化する
foreach($valueArray as $value) {
$subTotal += $value;
}
$subTotalArray[$index] = $subTotal;
}
print_r($subTotalArray);
これが正常なコードです、まあ無精せずに初期化しろってことですね(汗あ、ちなみにソースは動作テストしていませんので、動かなかったらごめんなさい。
PHPはダメですよね・・。ゴミみたいな言語ですので・・。
返信削除