array_chunk — 将一个数组分割成多个,得到的数组是一个多维数组中的单元,其索引从零开始,每一维包含了 length
个元素。
$array
, int $length
, bool $preserve_keys
= false
): array将一个数组分割成多个数组,其中每个数组的单元数目由 length
决定。最后一个数组的单元数目可能会少于 length
个。
参数说明:
array
length
preserve_keys
true
,可以使 PHP 保留输入数组中原来的键名。如果你指定了 false
,那每个结果数组将用从零开始的新数字索引。默认值是 false
。1、分隔数组示例:
<?php $input_array = array(‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘); print_r(array_chunk($input_array, 2));
返回:会对key重新排序
Array ( [0] => Array ( [0] => a [1] => b ) [1] => Array ( [0] => c [1] => d ) [2] => Array ( [0] => e ) )
2、如果要保留原来的的key,则置$preserve_key为true
<?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 ) )
3、如果key为混合数字和字符串类型,不会保留原有的key,默认会重新排序
<?php $input_array = array(0 => ‘a‘, b =>‘b‘, 3 => ‘c‘, ‘d‘ => ‘d‘, ‘e‘); print_r(array_chunk($input_array, 2)); ?>
返回:每个拆分的数组下标都是从0开始
Array ( [0] => Array ( [0] => a [1] => b ) [1] => Array ( [0] => c [1] => d ) [2] => Array ( [0] => e ) )
原文:https://www.cnblogs.com/ttaylor/p/15096506.html