在 php 编程中,如果遇到数组的元素过多,不方便处理的情况下。我们可以通过分割数组的方法,将其变成一个个的小数组块,这样再处理就方便很多了。
php 中预设了一个 array_chunk() 函数,可以将一个数组的元素,按照一定的数量分割成多个数组块。
php array_chunk() 函数
array_chunk():函数把一个数组分割为新的数组块。
语法:array_chunk(array,size,preserve_keys);
参数:
array:规定被处理的数组
size:规定每个数组块中被分配几个元素
preserve_key:(可选)是否保留原始数组的键名,True,保留,False,不保留(默认)
php array_chunk() 函数分割数组的方法
1、php分割一个数组,并保留原始的键名
php代码:<?php
$arr = array('a' => 'red','b' => 'green','c' => 'blur','d' => 'black');
print_r(array_chunk($arr,2,true));
?>
运行结果:Array
(
[0] => Array
(
[a] => red
[b] => green
)
[1] => Array
(
[c] => blur
[d] => black
)
)
2、php把一个数组分割成多个数组块
php代码:<?php
$arr = array('beijing','shanghai','hangzhou','guangzhou','guangdong');
print_r(array_chunk($arr,2,true));
?>
运行结果:Array
(
[0] => Array
(
[0] => beijing
[1] => shanghai
)
[1] => Array
(
[2] => hangzhou
[3] => guangzhou
)
[2] => Array
(
[4] => guangdong
)
)
PS:如果元素不能平均分配,则最后一个数组块的元素数量就会减少
php array_chunk() 函数使用注意事项
1、如果 array_chunk() 函数处理的数组过大,会造成内存溢出
2、array_chunk() 只能把数组分割成多个独立的数组块,并不是独立的数组变量