好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

PHP中array_merge合并两个数组的程序 - php数组

PHP中array_merge合并两个数组的程序

合并数据在php中我们利用array_merge()函数来实现,array_merge() 函数把两个或多个数组合并为一个数组. 如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的).如果数组是数字索引的,则键名会以连续方式重新索引.

实例代码如下:

<?php   echo   "rn第一种情况rn" ;   $a = array (1,2,3,4,5,6);   $b = array (7,8,9);       $c = array_merge  ( $a , $b );   print_r( $c );   $c = $a + $b ;   print_r( $c );   $c = $b + $a ;   print_r( $c );           echo   "rn第二种情况rn" ;   $a = array ( 'a' , 'b' , 'c' , 'd' , 'e' , 'f' );   $b = array ( 'a' , 'x' , 'y' );       $c = array_merge  ( $a , $b );   print_r( $c );   $c = $a + $b ;   print_r( $c );   $c = $b + $a ;   print_r( $c );           echo   "rn第三种情况rn" ;       $a = array (    1=> 'a' ,    2=> 'b' ,    3=> 'c' ,    4=> 'd' ,    5=> 'e' ,    6=> 'f' );   $b = array (    1=> 'a' ,    7=> 'x' ,    8=> 'y' );       $c = array_merge  ( $a , $b );   print_r( $c );   $c = $a + $b ;   print_r( $c );   $c = $b + $a ;   print_r( $c );   ?>  结果如下:  第一种情况   Array   (       [0] => 1       [1] => 2       [2] => 3       [3] => 4       [4] => 5       [5] => 6       [6] => 7       [7] => 8       [8] => 9   )   Array   (       [0] => 1       [1] => 2       [2] => 3       [3] => 4       [4] => 5       [5] => 6   )   Array   (       [0] => 7       [1] => 8       [2] => 9       [3] => 4       [4] => 5       [5] => 6   )       第二种情况   Array   (       [0] => a       [1] => b       [2] => c       [3] => d       [4] => e       [5] => f       [6] => a       [7] => x       [8] => y   )   Array   (       [0] => a       [1] => b       [2] => c       [3] => d       [4] => e       [5] => f   )   Array   (       [0] => a       [1] => x       [2] => y       [3] => d       [4] => e       [5] => f   )       第三种情况   Array   (       [0] => a       [1] => b       [2] => c       [3] => d       [4] => e       [5] => f       [6] => a       [7] => x       [8] => y   )   Array   (       [1] => a       [2] => b       [3] => c       [4] => d       [5] => e       [6] => f       [7] => x       [8] => y   )   Array   (       [1] => a       [7] => x       [8] => y       [2] => b       [3] => c       [4] => d       [5] => e       [6] => f   ) 

1)键名为数字时,array_merge()不会覆盖掉原来的值,但+合并数组则会把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值[抛弃]掉(不是覆盖)

2)键名为字符时,+仍然把最先出现的值作为最终结果返回,而把后面的数组拥有相同键名的那些值[抛弃]掉,但array_merge()此时会覆盖掉前面相同键名的值

注释:如果仅仅向 array_merge() 函数输入了一个数组,且键名是整数,则该函数将返回带有整数键名的新数组,其键名以 0 开始进行重新索引

查看更多关于PHP中array_merge合并两个数组的程序 - php数组的详细内容...

  阅读:52次