foreach (array_keys($R + $A) as $arrKey) {
$sums[$arrKey] = (isset($R[$arrKey]) ? $R[$arrKey] : 0) + (isset($A[$arrKey]) ? $A[$arrKey] : 0);}
上述工作。數組不需要有相同數量的密鑰,並且它可以正確添加。減去陣列vs添加陣列
foreach (array_keys($B - $C) as $arrKey) {
$sums[$arrKey] = (isset($B[$arrKey]) ? $B[$arrKey] : 0) - (isset($C[$arrKey]) ? $C[$arrKey] : 0);}
foreach (array_keys($B + $C) as $arrKey) {
$sums[$arrKey] = (isset($B[$arrKey]) ? $B[$arrKey] : 0) - (isset($C[$arrKey]) ? $C[$arrKey] : 0);}
以上兩種都不起作用。他們打印出致命錯誤:不支持的操作數類型(並且它們都指向每個行的第一行(帶有「foreach」的行)。當我想添加事物時,它們可能有或沒有相同的數字。減去兩個數組有相同數目的
所以,我的問題是:??爲什麼用另外的工作,而不是減法和一個會怎麼然後減去
+正在「合併」數組而不是「添加」它們:ar ray_diff()可能會給你一個等價的,這取決於你實際上期待的是什麼 –