如何将一个php二维数组插入另一个二维数组,如:

如何将一个php二维数组插入另一个二维数组, 如:
$a1=array(
'0' => array( "id" => '1', 'name'=>'aa' ),
'1' => array( "id" => '2', 'name'=>'bb' )
);
$a2=array(
'0' => array( "id" => '1', 'pwd'=>'888' ),
'1' => array( "id" => '2', 'pwd'=>'999' )
);
合并成:
$a1_a2=array(
'0' => array( "id" => '1', 'name'=>'aa' , 'pwd'=>'888' ),
'1' => array( "id" => '2', 'name'=>'bb' , 'pwd'=>'999' ),
);

  array_splice(array,offset,length,array)

  array 必需。规定数组。
  offset 必需。数值。如果 offset 为正,则从输入数组中该值指定的偏移量开始移除。如果 offset 为负,则从输入数组末尾倒数该值指定的偏移量开始移除。
  length 可选。数值。如果省略该参数,则移除数组中从 offset 到 结尾的所有部分。如果指定了 length 并且为正值,则移除这么多元素。如果指定了 length 且为负值,则移除从 offset 到数组末尾倒数 length 为止中间所有的元素。
  array 被移除的元素由此数组中的元素替代。如果没有移除任何值,则此数组中的元素将插入到指定位置。

  length 参数设置为 0:
  <?php
  $a1=array(0=>"Dog",1=>"Cat");
  $a2=array(0=>"Tiger",1=>"Lion");
  array_splice($a1,1,0,$a2);
  print_r($a1);
  ?>

  输出:
  Array ( [0] => Dog [1] => Tiger [2] => Lion [3] => Cat )
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-14
依ID合并的话,可以如下面的样子写:
<?php
$a1=array(
'0' => array( "id" => '1', 'name'=>'aa' ),
'1' => array( "id" => '2', 'name'=>'bb' )
);
$a2=array(
'0' => array( "id" => '1', 'pwd'=>'888' ),
'1' => array( "id" => '2', 'pwd'=>'999' )
);
$newarray = array();
$a1new = array();
$a2new = array();
foreach($a1 as $row){
$a1new[$row['id']] = $row['name'];
}
foreach($a2 as $row){
$a2new[$row['id']] = $row['pwd'];
}
foreach($a1new as $key=>$value){
$newarray[] = array(
'id'=>$key,
'name'=>$value,
'pwd'=>isset($a2new[$key])?$a2new[$key]:'',
);
}
print_r($newarray);本回答被提问者和网友采纳
第2个回答  2012-08-20
for($i=0;$i<count($a1);$i++){
$a1_a2[]= array_merge($a1[$i], $a2[$i]);
$a1_a2[] =array_unique($a1_a2[]);

}
第3个回答  2012-08-20
fnkehxjycr6062063775f
相似回答