2013-06-04 2 views
0

두 배열을 결합하고 중복 된 키를 재정의하지만 모든 색인을 다시 색인화하지 않으려합니다. 거기에 어떤 기능이 있습니까?array_merge와 array1 + array2 사이의 균열

둘 다의 공용 구조가 필요하므로 각 키에있는 내용이 중요하지 않습니다.

어레이 (1) :

[820] 
    [name1] 
     [id] = "My Name" 
    [name2] 
     [id] = "Your Name" 
[830] 
    [id] = "Mothers Name" 

어레이 (2) :

[815] 
    [name1] 
     [id] = "IDs Name" 
[820] 
    [name1] 
     [id] = "Names Name" 
    [id] = "Last ID ID" 

결과는 작동 당

[815] 
    [name1] 
     [id] = //does not matter 
[820] 
    [name1] 
     [id] = //does not matter 
    [name2] 
     [id] = //does not matter 
    [id] = //does not matter 
[830] 
    [id] = //does not matter 

답변

0
$result = array(); 
foreach ($array1 as $key => $value){ 
    if(isset($array2[$key])) 
     $result[$key] = array_merge($value, $array2[$key]); 
    else 
     $result[$key] = $value; 
} 
foreach ($array2 as $key => $value){ 
    if(isset($array1[$key])) 
     $result[$key] = array_merge($value, $array1[$key]); 
    else 
     $result[$key] = $value; 
} 
+0

들으되어야 fectly :) –

관련 문제