我有200个整数值的第一个$array1
,$array1
个整数值是随机值,第二个数组如下所示
$array2= array('30','40,'70','30','30');
两个数组都是动态生成的。
我希望根据$array1
值将$array2
划分为更小的数组,因为来自$array1
的前30个整数将生成单独的数组,之后来自$array1
的40个整数将制作第二个新阵列,依此类推。从上面的例子中将有5个新阵列。
任何人都可以帮助我。
我在下面尝试过它可以根据指定的值进行划分。但它没用“
$arrays = array_chunk($array1, 30);
答案 0 :(得分:2)
您应该迭代块大小数组并每次切断输入数组的适当部分:
$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);
}
答案 1 :(得分:0)
你为什么不试试这个
$startingPoint = 0;
foreach($array2 as $val)
{
for($i = $startingPoint ; $i < $startingPoint + $val ; $i++)
{ $array1[$i] }
$startingPoint += $val
}