我有这个数组(我的数据库结果)
$nums = array("one","two","three",....,"nine");
或
$nums = array("one","two","three","four");
我想用这些值填充锯齿状数组。 我的锯齿状阵列应该是这样的:
$kb = [
['one','two','three'],
['four','five','six'],
['seven','eight','nine']
];
或
$kb = [
['one','two','three'],
['four',' ',' ']
];
我该怎么做?
答案 0 :(得分:3)
array_chunk
将主要完成这项工作,
$kb = array_chunk($nums, 3);
但是如果输入数组没有均匀分配,它就不会用空格填充最终的子数组。
即,array_chunk
as-is将产生:
$kb = [
['one','two','three'],
['four']
];
而不是您想要的输出。
您可以将最后一项与空白数组合并以解决此问题。
$kb[count($kb)-1] = end($kb) + ['','',''];
(可以无条件地执行;如果输入数组 均匀分配,它就不会改变任何东西。)
答案 1 :(得分:2)
您需要使用array_chunk()方法
$nums = array("one","two","three","four");
$nums = array_chunk($nums, 3);