array_chunk()用于将数组按指定大小分割成多个子数组,返回二维数组;支持保留原键名、处理非整除情况,并常用于分页、批量处理等场景。
array_chunk() 是 PHP 中用来把一个数组按指定大小“切块”的函数,返回由多个子数组组成的新二维数组。
最常见用法是把一维数组每 n 个元素分成一组:
array_chunk($array, $size, $preser
ve_keys = false)
$array 是要处理的原数组$size 是每个子数组最多包含的元素个数(必须大于 0)$preserve_keys 默认为 false,即重置键名(从 0 开始编号);设为 true 可保留原数组的键名当需要维持原数组的关联关系时,开启 $preserve_keys = true:
array_chunk(['a' => 1, 'b' => 2, 'c' => 3, 'd' => 4], 2, true)
[ ['a' => 1, 'b' => 2], ['c' => 3, 'd' => 4] ]
如果原数组长度不能被 $size 整除,最后一块自动包含剩余元素:
array_chunk([1,2,3,4,5], 2) → [[1,2], [3,4], [5]]
$size 大于原数组长度,结果就是整个数组包在一层里:[[1,2,3]]
这个函数常用于分页展示、表格行分组、批量处理等:
foreach (array_chunk($products, 3) as $row) { ... }
foreach (array_chunk($data, 10) as $batch) { send_batch($batch); }
基本上就这些。用对参数,它就能干净利落地帮你把数组“切”成想要的样子。