2013-07-01 47 views
-1

當標籤相同過來的值寫入到該密鑰我在填充foreach循環如何在鍵名相同時添加數組值?

foreach ($value as $key){ 
    $array[$key[label]]= $key[name]; 
} 

的數組。

問題:當鍵值相同時,我想添加值並存儲到該鍵。任何想法?

例如:

$key[name1]=5 
$key[name2]=4 
$key[name1]=3 
then the $key[name1]=8(5+3) 

回答

0

喜歡的東西:

foreach ($value as $key) { 
    if (isset($array[$key[label]]) { 
     $array[$key[label]] += $key[name]; 
    } else { 
     $array[$key[label]] = $key[name]; 
    } 
} 

哦......實際上你應該或包裹label內報價或它是一個變量,你應該在前面加上$。

2

使用環內的isset檢查:

例如

foreach($array as $key => $value) { 
    if (isset($otherarray[$key])) { 
     $otherarray[$key] += $value; 
    } else { 
     $otherarray[$key] = $value; 
    } 
} 
0
foreach ($value as $key){ 
    if(!array_key_exists($key['label'], $array)) 
     $array[$key['label']] = 0; 

    $array[$key['label']] += $key['name']; 
} 

假設值是整數,如你的例子。

相關問題