2016-04-19 16 views
-1

ich die beiden Arrays mit meiner Codeausführung erhalten habe, wie unten gezeigt:Hinzufügen von Werten aus zwei diffrent Arrays php

$one = array("IN","US","IN","JP"); 
$two = array("10","20","30","40"); 

In obigem Fall die Sequenz für jeden Wert gleich ist. h. der erste Wert für IN = 10. Für US = 20
Ich möchte die Werte für die gleichen Länder hinzufügen. So dass für Indien ich die Summe von 40 haben werde.
Ich habe keine Ahnung davon, dies zu lösen.

Antwort

1

Sie können die beiden Arrays zusammenführen und die Werte aus dem ersten Array als Index verwenden. Jetzt

$one = array("IN","US","IN","JP"); 
$two = array("10","20","30","40"); 
$merge = array(); 

// Loop through the first array 
foreach($one as $index => $value){ 
    // If the country has not been set before, create the index 
    if(!isset($merge[$value])) 
     $merge[$value] = $two[$index]; 
    else // Add the value if it's not the first time we 'see' this country 
     $merge[$value] += $two[$index]; 
} 

wenn Sie $merge['IN'] tun, wäre es Ihnen 40 geben.

Ergebnis Var_dump:

array(3) { 
    ["IN"]=> int(40) 
    ["US"]=> string(2) "20" 
    ["JP"]=> string(2) "40" 
} 
Verwandte Themen