PHP提供了一系列数组函数,其中之一就是array_chunk函数。这个函数可以用来将数组分割成更小的数组,每个数组的元素个数由用户决定。array_chunk函数的语法格式如下:
array array_chunk ( array $array , int $size [, bool $preserve_keys = false ] )
其中,$array表示要分割的数组;$size表示每个小数组的元素个数;$preserve_keys表示是否保留原数组的键值,默认为false,即不保留。下面来看一个实例:
$arr = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j');
$arr_chunk = array_chunk($arr, 3);
print_r($arr_chunk);
输出结果如下:
Array
(
[0] => Array
(
[0] => a
[1] => b
[2] => c
)
[1] => Array
(
[0] => d
[1] => e
[2] => f
)
[2] => Array
(
[0] => g
[1] => h
[2] => i
)
[3] => Array
(
[0] => j
)
)
可以看到,上面的数组被分割成了4个小数组,每个小数组有3个元素,一个小数组只有一个元素。
除了上面的例子,array_chunk函数还可以保留原数组的键值,比如:
$arr = array('a' => 'a', 'b' => 'b', 'c' => 'c', 'd' => 'd', 'e' => 'e', 'f' => 'f', 'g' => 'g', 'h' => 'h', 'i' => 'i', 'j' => 'j');
$arr_chunk = array_chunk($arr, 3, true);
print_r($arr_chunk);
输出结果如下:
Array
(
[0] => Array
(
[a] => a
[b] => b
[c] => c
)
[1] => Array
(
[d] => d
[e] => e
[f] => f
)
[2] => Array
(
[g] => g
[h] => h
[i] => i
)
[3] => Array
(
[j] => j
)
)
可以看到,原数组的键值被保留了下来,比如第一个小数组的键值分别是a, b, c。
来说,array_chunk函数可以用来将数组分割成更小的数组,每个数组的元素个数由用户决定,用户还可以选择是否保留原数组的键值。