array_chunk()函数是PHP中的内置函数, 用于根据传递给函数的参数将数组拆分为给定大小的部分或块。最后一个块可能包含的元素少于所需大小的元素。
语法如下:
array array_chunk( $array, $size, $preserve_keys )
参数:该函数接受三个参数, 如上面的语法所示。参数说明如下:
- $ array:此参数表示需要分成块的数组。
- $ size:此参数是整数, 它定义要创建的块的大小。
- $ preserve_keys:此参数为布尔值。当此参数设置为true然后保留键, 否则从0开始重新索引该块。
返回值:此函数返回从0开始索引的多维数组。每个块均包含$大小元素数量, 最后一个块除外, 后者可能包含较少数量的元素。
例子:
Input : $input_array = array('a', 'b', 'c', 'd', 'e');
array_chunk($input_array, 2);
Output : Array(
[0] => Array
(
[0] => a
[1] => b
)
[1] => Array
(
[0] => c
[1] => d
)
[2] => Array
(
[0] => e
)
)
Input : $input_array = array('a', 'b', 'c', 'd', 'e');
array_chunk($input_array, 2, true)
Output : Array
(
[0] => Array
(
[0] => a
[1] => b
)
[1] => Array
(
[2] => c
[3] => d
)
[2] => Array
(
[4] => e
)
)
在第一个示例中, 返回多维数组, 其中每个块都包含2元素。在第二个示例中, 由于第三个参数作为true传递, 因此每个块中的元素索引与从中创建块的原始数组中的元素索引相同。在这种情况下, 每个块包含2元素, 它们是传递给函数的size的值。
下面的程序说明了PHP中的array_chunk()函数:
程序1:
<?php
$input_array = array ( 'a' , 'b' , 'c' , 'd' , 'e' );
print_r( array_chunk ( $input_array , 2));
?>
输出如下:
Array
(
[0] => Array
(
[0] => a
[1] => b
)
[1] => Array
(
[0] => c
[1] => d
)
[2] => Array
(
[0] => e
)
)
程式2:
<?php
$input_array = array ( 'a' , 'b' , 'c' , 'd' , 'e' );
print_r( array_chunk ( $input_array , 2, true));
?>
输出如下:
Array
(
[0] => Array
(
[0] => a
[1] => b
)
[1] => Array
(
[2] => c
[3] => d
)
[2] => Array
(
[4] => e
)
)
参考: http://php.net/manual/en/function.array-chunk.php