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函数可以用来将数组分割成更小的数组,每个数组的元素个数由用户决定,用户还可以选择是否保留原数组的键值。