array_chunk()
函数用于将一个数组分割成指定大小的块,并返回一个包含这些块的二维数组。
用法:
array_chunk(array $input, int $size, bool $preserve_keys = false): array
参数:
$input
:必需,要分割的数组。$size
:必需,每个块的大小。$preserve_keys
:可选,如果设置为true
,则保留原数组的键名。默认为false
。
返回值: 返回一个包含分割后的块的二维数组。
示例:
$myArray = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];
// 每个块的大小为3,不保留键名
$result = array_chunk($myArray, 3);
print_r($result);
// 输出:
// Array
// (
// [0] => Array
// (
// [0] => a
// [1] => b
// [2] => c
// )
// [1] => Array
// (
// [0] => d
// [1] => e
// [2] => f
// )
// [2] => Array
// (
// [0] => g
// )
// )
// 每个块的大小为2,保留键名
$result2 = array_chunk($myArray, 2, true);
print_r($result2);
// 输出:
// Array
// (
// [0] => Array
// (
// [0] => a
// [1] => b
// )
// [1] => Array
// (
// [2] => c
// [3] => d
// )
// [2] => Array
// (
// [4] => e
// [5] => f
// )
// [3] => Array
// (
// [6] => g
// )
// )
上述示例中,array_chunk($myArray, 3)
将 $myArray
数组按照每个块的大小3进行分割,结果是一个二维数组,其中每个元素是一个包含3个元素的子数组。
另一方面,array_chunk($myArray, 2, true)
将 $myArray
数组按照每个块的大小2进行分割,并保留原数组的键名。结果是一个二维数组,其中每个元素是一个包含2个元素的子数组,并且子数组的键名与原数组保持一致。