PHP中可以用array_chunk将一个数组分隔成若干个数组。
数组:$array=[‘name’=>’tom’,’age’=>20,3,4,5,’a’,’b’];
每3个分割一组 $chunk_result=array_chunk($array,3);
结果
Array
(
[0]=>Array
(
[0]=>tom
[1]=>20
[2]=>3
)
[1]=>Array
(
[0]=>4
[1]=>5
[2]=>a
)
[2]=>Array
(
[0]=>b
)
)
如果数量不足,则最后一个数组不一定为3个。
如果需要保留键值,可以设置第三个参数为true
$chunk_result=array_chunk($array,3,true);
结果
Array
(
[0]=>Array
(
[name]=>tom
[age]=>20
[0]=>3
)
[1]=>Array
(
[1]=>4
[2]=>5
[3]=>a
)
[2]=>Array
(
[4]=>b
)
)
心得:
使用array_chunk比较的坑在于:如果数组过大,array_chunk很可能造成内存溢出,报:Allowedmemorysizeof134217728bytesexhausted类似这样的错误。