数组的array_merge()函数和array_chunk()函数的介绍及示例

本文主要讲述PHP中的合并和拆分函数,他们分别是array_merge()函数和array_chunk()函数,下面和小编一起来认识一下这两个函数吧!

php数组之整合、拆分

1、array_merge()函数

array_merge()函数的作用是合并一个或多个数组。

array array_merge(array $array1 [,array $...]);

array_merge()将一个或者多个数组的单元合并起来,一个数组的值附加在另一个数组的后面,返回一个新的数组。

①如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前面的值;

②如果数组中包含数字键名,后面的值不会覆盖原来的值,而是附加在数组的后面;

③如果数组是数字索引的,则键名会以连续方式重新编排索引。

  1. <?php
  2. $array1=array("color"=>"red",2,4);
  3. $array2=array("a","b","color"=>"green","shape"=>"trapezoid",4);
  4. $result=array_merge($array1,$array2);
  5. echo "<pre>";
  6. print_r($result);
  7. echo "</pre>";
  8. /*运行结果:
  9. Array
  10. (
  11. [color] => green
  12. [0] => 2
  13. [1] => 4
  14. [2] => a
  15. [3] => b
  16. [shape] => trapezoid
  17. [4] => 4
  18. )
  19. */
  20. ?>

2、array_chunk()函数

函数array_chunk()的作用是将一个数组分割成多个数组。

array array_chunk(array $input,int $size [,bool $preserve_keys]);

上述声明中,$input表示要分割的数组,$size是分割后每个数组中元素的个数,$preserve_keys是一个可选参数。如果将该参数设置为true,则分割后的数组中元素保留原来的索引,如果将该参数设置为false,则分割后数组中的元素的索引将从零开始。

代码如下:

  1. <?php
  2. $arr=array("cctv-a","cctv-b","cctv-c");
  3. //分割数组
  4. echo "<pre>";
  5. echo "分割后的数组为:" . "<br/>";
  6. print_r(array_chunk($arr,2));
  7. echo "</pre>";
  8. /*运行结果:
  9. 分割后的数组为:
  10. Array
  11. (
  12. [0] => Array
  13. (
  14. [0] => cctv-a
  15. [1] => cctv-b
  16. )
  17. [1] => Array
  18. (
  19. [0] => cctv-c
  20. )
  21. )
  22. */
  23. //第二次分割
  24. echo "<pre>";
  25. echo "分割后的数组为:" . "<br/>";
  26. print_r(array_chunk($arr,2,true));
  27. echo "</pre>";
  28. /*运行结果:
  29. 分割后的数组为:
  30. Array
  31. (
  32. [0] => Array
  33. (
  34. [0] => cctv-a
  35. [1] => cctv-b
  36. )
  37. [1] => Array
  38. (
  39. [2] => cctv-c
  40. )
  41. )
  42. */
  43. ?>