当前位置: 首页 > 文章教程  > 计算机与互联网 > 网络编程

5.4对数组进行分割、合并

9/17/2020 9:31:19 PM 人评论

5.4对数组进行分割、合并

5.4 对数组进行分割、合并

数组的分割是指将一个数组拆分成一个或多个数组。而数组的合并,可以看成分割的逆运算,即将多个数组组合成一个新的数组。下面分别介绍和分割、合并数组有关的PHP内置函数。

5.4.1 实现数组分割

使用函数array_chunk()可以对一个数组进行分割,该函数语法如下。


array array_chunk(array $input_array, int $size, bool $preserve_key);

该函数接受3个参数,$input_array是将要分割的数组(即原数组);$size表示原数组被分割后,每个数组中元素的个数;$preverse_key是可选参数,为TRUE时分割后的每个数组的索引使用原数组的索引名;为FALSE时分割后的每个数组的索引都将使用从0开始的整数索引。该函数的返回值是一个数组,这个数组的索引从0开始,该数组的每个元素仍然是一个数组,即原数组被分割后的一个数组。代码5-8演示了如何使用array_chunk()分割一个数组。

代码5-8 使用函数array_chunk()分割数组5-8.php


     01 <?php
     02 $ms_office = array(
     03 'wd'=>'word',
     04 'ec'=>'excel',
     05 'ol'=>'outlook',
     06 'ac'=>'access',
     07 'vs'=>'visio'
     08 );                                      //
定义数组$ms_office
     09 
     10 echo '<pre>';
     11 
     12 print_r(array_chunk($ms_office,2));
     13 print_r(array_chunk($ms_office,2,TRUE));
     14 ?>

【代码解析】代码第10行是为了让输出结果格式化。第12行的array_chunk()函数第2个参数表示分割后每个数组的元素为2。第13行中array_chunk()的第3个参数表示分割后的每个数组的索引使用原数组的索引名。这段代码的执行结果如图5-6所示。

5.4.2 实现数组合并

使用函数array_merge()可以合并一个或多个数组,该函数的语法如下。


array array_merge($array
…);

该函数接受一个或多个数组作为参数,PHP5中,它只接受array类型的参数。该函数返回一个合并后的数组。代码5-9演示了函数array_merge()的用法。

代码5-9 使用函数array_merge()合并数组5-9.php


     01 <?php
     02 $arr1 = array('Earth','Venus');                        //
定义数组$arr1
     03 $arr2 = array(4=>'Mars',5=>'Jupiter',6=>'Saturn');     //
定义数组$arr2     
     05 $planet = array_merge($arr1,$arr2);                    //
合并数组$arr1
和$arr2
     06 
     07 echo '<pre>';
     08 print_r($planet);
     09 ?>

【代码解析】array_merge()函数非常容易理解,就是先定义两个数组(如代码第02~03行),然后第5行直接用该函数合并两个数组。这段代码执行结果如图5-7所示。

图5-6 使用array_chunk()分割数组

图5-7 使用array_merge()合并数组

注意 从代码5-9的执行结果可以看出,如果要合并的数组中只有一个数组的索引是数字,那么合并后的数组的索引会从0开始,重新索引。如果要合并的数组中有相同的字符串索引,那么后面的索引值会覆盖前一个索引值。

相关教程

共有条评论 网友评论

验证码: 看不清楚?