2016-07-08 11 views
0

Hallo allerseits, wie kann ich ein Array zu anderen Schlüsseln zu einem anderen zusammenführen/schieben? Hier ist meine Arrays:PHP Merge 2 Array mit dem gleichen Schlüssel

// Array 1 
Array 
(
    [1] => Array 
     (
      [name] => test 
     ) 
) 

// Array 2 
Array 
(
    [1] => Array 
     (
      [age] => 25 
     ) 
) 

ich dieses Ergebnis wollen:

Array 
(
    [1] => Array 
     (
      [name] => test 
      [age] => 25 
     ) 
) 

Ich benutze PHP und wird sehr dankbar, wenn mir jemand helfen. Danke im Voraus!

+0

http://php.net/manual/en/function.array-merge-recursive.php? –

+0

@MarcB Ich versuche, aber nicht Erfolg bekommen? Irgendeine Idee, wie man es macht? Vielen Dank. – diank

+0

Geben Sie den Code ein, den Sie beim Testen der Array-Zusammenführung verwendet haben – Confiqure

Antwort

1
$arr = [ 1 => [ "name" => "Test" ] ]; 
$arr2 = [ 1 => [ "age" => 25 ] ]; 

foreach ($arr as $key => $value) { 
    if (isset($arr2[$key])) { 
     $arr[$key] = array_merge($value,$arr2[$key]); 
    } 
} 

print_r($arr); 

Überprüfen Sie die Ausgabe auf https://eval.in/602680

+0

Vielen Dank. – diank

+0

Ich habe einen Fehler gefunden, wenn ich mehr als ein Array (Array 1) das Alter nur zuletzt eingestellt habe. Wie behebt man das? Vielen Dank. – diank

+0

Fügen Sie wahrscheinlich ein weiteres 'if' nach dem' isset ($ arr2 [$ key]) '' '' hinzu if (isset ($ arr3 [$ key])) {$ arr [$ key] = array_merge ($ arr [$ key] , $ arr3 [$ key]) 'und so weiter, obwohl ich vermute, dass Sie das viel effizienter machen könnten, wenn Sie mehrere Einträge im selben Array hätten. – apokryfos

0

fügen sie einfach zusammen:

<?php 
$array1 = array('name' => 'test'); 
$array2 = array('age' => 21); 

var_dump($array1 + $array2); 
Verwandte Themen