我有第一个$array1
的200个整数值,$array1
的整数值是随机值,第二个数组说如下
$array2= array('30','40,'70','30','30');
两个数组都是动态生成的
我想根据$array2
值将我的$array1
分成更小的数组,因为$array1
的前30个整数将构成单独的数组,$array1
的后40个整数将构成第二个新数组,等等。从上面的例子中,将有5个新的数组。
有谁能帮帮我吗?
我在下面试过,它可以根据分配的值进行划分。但这没有用
$arrays = array_chunk($array1, 30);
您应该遍历块大小的数组,并每次截断输入数组的适当部分:
$input = range(0, 199);
$chunks = array(30, 40, 70, 30, 30);
$output = array();
$processed = 0;
while($chunks) {
$processed += $size = array_shift($chunks);
$output[] = array_slice($input, $processed, $size);
}
你为什么不试试这个
$startingPoint = 0;
foreach($array2 as $val)
{
for($i = $startingPoint ; $i < $startingPoint + $val ; $i++)
{ $array1[$i] }
$startingPoint += $val
}