2011-06-29 72 views
0

我想合并两个数组,其中每个具有相同的索引(ID这里),但我不想删除重复的ID (对不起,我的英语...)组合两个阵列数据

First array name : $data['student'] 
Second array name: $data_student_name 

我有此阵列($data['student']

Array ([0] => Array ([id] => 16 [groups_id] => 1 [group_number] => 301) [1] => Array ([id] => 17 [groups_id] => 1 [group_number] => 301) [2] => Array ([id] => 18 [groups_id] => 1 [group_number] => 301) [3] => Array ([id] => 5 [groups_id] => 1 [group_number] => 301) [4] => Array ([id] => 14 [groups_id] => 1 [group_number] => 301) [5] => Array ([id] => 18 [groups_id] => 2 [group_number] => 434) [6] => Array ([id] => 19 [groups_id] => 2 [group_number] => 434) [7] => Array ([id] => 19 [groups_id] => 1 [group_number] => 301)) 

和此阵列$data_student_name

Array ([0] => Array ([id] => 5 [firstname] => Bruno [sex] => M) [1] => Array ([id] => 14 [firstname] => David [sex] => M) [2] => Array ([id] => 16 [firstname] => Élyse [sex] => F) [3] => Array ([id] => 17 [firstname] => Jean [sex] => M) [4] => Array ([id] => 18 [firstname] => Julie [sex] => F) [5] => Array ([id] => 19 [firstname] => Marie [sex] => F)) 

我结合我的两个阵列,这

$data['group_student']= array(); 
    foreach ($data_student_name as $arr) { 
     $match = false; 
     foreach ($data['student'] as $arr2) { 
      if ($arr['id'] == $arr2['id']) { 
       $match = true; 
       $data['group_student'][] = array_merge($arr, $arr2); 
       break; 
      } 
     } 
     if (!$match) $data['group_student'][] = $arr; 
    } 

我optain这个结果(玛丽不重复:()($data['group_student']

Array ([0] => Array ([id] => 5 [firstname] => Bruno [sex] => M [groups_id] => 1 [group_number] => 301) [1] => Array ([id] => 14 [firstname] => David [sex] => M [groups_id] => 1 [group_number] => 301) [2] => Array ([id] => 16 [firstname] => Élyse [sex] => F [groups_id] => 1 [group_number] => 301) [3] => Array ([id] => 17 [firstname] => Jean [sex] => M [groups_id] => 1 [group_number] => 301) [4] => Array ([id] => 18 [firstname] => Julie [sex] => F [groups_id] => 1 [group_number] => 301) [5] => Array ([id] => 19 [firstname] => Marie [sex] => F [groups_id] => 2 [group_number] => 434) 1)) 

,我想这个结果(玛丽被复制)

Array ([0] => Array ([id] => 5 [firstname] => Bruno [sex] => M [groups_id] => 1 [group_number] => 301) [1] => Array ([id] => 14 [firstname] => David [sex] => M [groups_id] => 1 [group_number] => 301) [2] => Array ([id] => 16 [firstname] => Élyse [sex] => F [groups_id] => 1 [group_number] => 301) [3] => Array ([id] => 17 [firstname] => Jean [sex] => M [groups_id] => 1 [group_number] => 301) [4] => Array ([id] => 18 [firstname] => Julie [sex] => F [groups_id] => 1 [group_number] => 301) [5] => Array ([id] => 19 [firstname] => Marie [sex] => F [groups_id] => 2 [group_number] => 434) [6] => Array ([id] => 19 [firstname] => Marie [sex] => F [groups_id] => 2 [group_number] => 301)) 

请问我该怎么做?

+3

让我们在这些_huge_数组定义中添加一些换行符! –

回答

0

使用array_merge

array_merge($arr1, $arr2); 
+0

array_merge不工作检查我更新的问题 –

+1

@user,请在您的阵列中放置一些换行符.... – Neal