好得很程序员自学网

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

PHP array_merge合并拆分两个数组 - php数组

PHP array_merge合并拆分两个数组

对数组的array_merge函数和+运算符比较迷惑,写了个小程序比较下发现了他们的不同. 特别是+运算符,他的意思是,将右边的数组单元(去重复)追加到左边数组的后面.

实例代码如下:

<?php  $arr1 = array ( "a" , "b" , "c" );  $arr2 = array ( "c" , "d" , "e" );  $myarray = array_merge ( $arr1 , $arr2 );  print_r( $myarray );  $myarray = array_unique ( $myarray );  print_r( $myarray );  ?> 

实例代码如下:

<?php  $array1 = array (1, 2); //数组1   $array2 = array (2, 3); //数组2   $array3 = array_merge ( $array1 ,  $array2 ); //合并数组;   $array3 = array_unique ( $array3 ); //移除数组中重复的值   ?> 

实例代码如下:

<?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   ) 

拆分数组 array_slice()

array_slice()函数将返回数组中的一部分,从键offset开始,到offset+length位置结束.其形式:

Php代码  

1.array array_slice (array array, int offset[,int length])  

array array_slice (array array, int offset[,int length])    

offset 为正值时,拆分将从距数组开头的offset 位置开始;如果offset 为负值,则拆分从距数组末尾的offset 位置开始.如果省略了可选参数length,则拆分将从offset 开始,一直到数组的最后一个元素.如果给出了length 且为正数,则会在距数组开头的offset+length 位置结束.相反,如果给出了length且为负数,则在距数组开头的count(input_array)-|length|位置结束.考虑一个例子:

Php代码 

实例代码如下:

<?php  $fruits  =  array ( "Apple" ,  "Banana" ,  "Orange" ,  "Pear" ,  "Grape" ,  "Lemon" ,  "Watermelon" );  $subset  =  array_slice ( $fruits , 3);  print_r( $subset );  // output   // Array ( [0] => Pear [1] => Grape [2] => Lemon [3] => Watermelon )   ?> 

然后我们使用下负长度:

Php代码 

实例代码如下:

<?php  $fruits  =  array ( "Apple" ,  "Banana" ,  "Orange" ,  "Pear" ,  "Grape" ,  "Lemon" ,  "Watermelon" );  $subset  =  array_slice ( $fruits , 2, -2);  print_r( $subset );  // output   // Array ( [0] => Orange [1] => Pear [2] => Grape )   ?> 

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

  阅读:39次