我有一个数组,如:
$list = array('a', 'b', 'c', 'd', 'e',
'f', '1', '2', '3', '4',
'5', '6', '7', '8', '9');
我想拆分这个数组,并将每两个项添加到一个新数组中作为一个组,如:
$new_list = array(
array('a', 'b'),
array('c', 'd'),
array('e', 'f'),
array('1', '2'),
array('3', '4'),
array('5', '6'),
array('7', '8'),
array('9'), // note that this one here is alone!
);
但是我想用foreach
或其他东西来做这个。我只知道我可以用2来划分我的数组长度,并使用round
或floor
PHP函数来得到一个整数,但我不知道如何将这个数组的项目分组为每个数组的两个项目。
请帮帮我,我的脑子都满了
$list = ['a', 'b', 'c', 'd', 'e',
'f', '1', '2', '3', '4',
'5', '6', '7', '8', '9'];
$list2 = [];
$c = 0;
$temp_array = [];
for ($i = 0; $i < Count($list); $i++)
{
$c++;
array_push($temp_array, $list[$i]);
if ($c >= 2)
{
array_push($list2, $temp_array);
$temp_array = [];
$c = 0;
}
}
print_r($list2);
echo '<br />List2: ' . count($list2) . '<br />List: ' . count($list);
EDIT:或者Mark Baker提供的array_chunk()函数的解决方案。