rt$a1 =array(1 =>1, 3=>67, 4=>90);$a2 =array(1 =>5, 3=>89, 5=>88);$a3 = array(1=>6,3=>156, 4=>90, 5=>88);怎样有$a1,$a2得到$a3

解决方案 »

  1.   

    $a3_keys=array_keys($a1+$a2);
    print_r($a3_keys);
    $a3=array();
    foreach($a3_keys as $key)
    {
    $a3[$key]=$a1[$key]+$a2[$key];
    }
    print_r($a3);
      

  2.   

     
    <?
    $a1 =array(1 =>1, 3=>67, 4=>90);$a2 =array(1 =>5, 3=>89, 5=>88,7=>96);
     
    $max=max(max(array_keys($a1)),max(array_keys($a2)));
     
    for ($i=0;$i<=$max;$i++)
    {
    if (isset($a1[$i])&&isset($a2[$i])) 
    {
    $a3[$i]=$a1[$i]+$a2[$i];
    }
    elseif(isset($a1[$i])&&!isset($a2[$i]))
    {
    $a3[$i]=$a1[$i];
    }
    elseif(!isset($a1[$i])&&isset($a2[$i])) 
    {
    $a3[$i]=$a2[$i];
    }
    }
    print_r($a3);
    ?>
    3随便写了一下,。自己看着改吧
      

  3.   

    <?php 
      $a1 =array(1 =>1, 3=>67, 4=>90);
      $a2 =array(1 =>5, 3=>89, 5=>88);
      $result = array();
    foreach($a1 as $key=>$value){
      $result[$key] = $value; 
      if(array_key_exists($key,$a2))
       {
        $result[$key]+=$a2[$key];
       }
       }
    foreach($a2 as $key=>$value){
      if(!(array_key_exists($key,$result)))
       {
        $result[$key] = $a2[$key];
       }
       }
    print_r($result);
    ?>
      

  4.   


    foreach($a1 as $k=>$v) $a3[$k]=$v;
    foreach($a2 as $k1=>$v1){
           if(!$a1[$k1])
       $a3[$k1]=$v1;
    else
        $a3[$k1]+=$v1;
    }
    print_r($a3);