首先非常感謝所有好的答案Stackoverflow社區提供。 我一直設法在這裏找到答案。這一次似乎有點不同 ,因爲經過幾天的搜索,我找不到答案。可能是因爲 我不知道如何正確地問這個具體案例的問題!?PHP總和循環結果幾個組合
案例:
從MySQL表PHP循環結果:
array {
[0]=>
["productName"]=> P1
["qty"]=> 1
["color"]=> black
}
[1]=>
["productName"]=> P1
["qty"]=> 1
["color"]=> red
}
[2]=>
["productName"]=> P2
["qty"]=> 1
["color"]=> blue
}
[3]=>
["productName"]=> P3
["qty"]=> 1
["color"]=> black
}
[4]=>
["productName"]=> P3
["qty"]=> 1
["color"]=> red
}
[5]=>
["productName"]=> P2
["qty"]=> 1
["color"]=> green
}
.....more and more.....
}
- 產品P1,P2,P3,P4可以在黑色,紅色,綠色或藍色。
我們這裏有下面的所有可能的組合:
P1 - black, P1 - red, P1 - green, P1 - blue. P2 - black, P2 - red, P2 - green, P2 - blue. P3 - black, P3 - red, P3 - green, P3 - blue. P4 - black, P4 - red, P4 - green, P4 - blue.
問題:如何獲得每個組合的總和量?
我們可以通過使用下面的代碼來得到結果,但是當然您必須爲每個組合編寫相同的代碼。它沒有任何意義....想象一下100件或以上....
$sumP1Black = 0;
foreach ($dao->getArticles() as $value) {
if(($value->productName == 'P1') && ($value->color == 'black')) {
$total = $value->qty;
$sumP1Black += $total;
}
}
print_r($sumP1Black);
我想知道怎麼才能爲這個特定的情況下,正確的代碼。 我沒有在這個例子中包括它,但你也可以添加上述產品的示例尺寸(XL,L,M,...)...
這將是偉大的如果有人可以「推我」在正確的方向...
非常感謝您的時間,
裏克
非常感謝薩赫勒。它確實有幫助。根據你的建議,我已經在$ key中添加了以上答案中產品的尺寸... – Ric
@Ric我希望你能接受我的回答....並且歡迎...... :) –