1

我想将键和值形式的数组多维添加到其他数组多维。我有 2 个数组多维,这是:

$data1 = array(
   array('id' => 1, 'name' => 'Dani'),
   array('id' => 2, 'name' => 'Maachan'),
);

$data2 = array(
   array('id' => 2, 'class' => 'Informatics'),
);

我想将 2 数组多维加入到多维数组中,$data1 中的“id”在 $data2 中有一些值“id”,如下所示:

$dataResult = array(
   array('id' => 1, 'name' => 'Dani', 'class' => ''),
   array('id' => 2, 'name' => 'Maachan', 'class => 'Informatics'),
);

我希望你能帮助我,谢谢。

4

1 回答 1

0

这有效

$data1 = array(
   array('id' => 1, 'name' => 'Dani'),
   array('id' => 2, 'name' => 'Maachan'),
);

$data2 = array(
   array('id' => 2, 'class' => 'Informatics'),
);

//first lets sort out data2
$new_data2 = array();
foreach($data2 as $d){
    $new_data2[$d['id']] = $d['class'];
}

$new_data1 = array();
//now lets create a final array
foreach($data1 as $d){
    $d['class'] = array_key_exists($d['id'], $new_data2) ? $new_data2[$d['id']] : '' ;;
    $new_data1[] = $d;
}

echo '<pre>';
print_r($new_data1);
echo '</pre>';
于 2013-06-23T18:54:06.703 回答