将数组拆分为多个数组

Rus*_*kar 1 php arrays

我有一个动态长度 L1 的数组。我需要将此数组拆分为 L2 个数组,每个数组都有LEN[i]来自原始数组的数字。

EX:
Original:

 $array=[1,2,3,4,5,6,7,8,9,10]

Here L1=10

L2=3

$LEN=[3,3,4]

So the 3 arrays will be

$a1=[1,2,3]

$a2=[4,5,6]

$a3=[7,8,9,10]
Run Code Online (Sandbox Code Playgroud)

我尝试了很多方法,但似乎没有任何效果。任何帮助将不胜感激。

Nar*_*dia 5

如果您需要这样一个可变的块数组长度,那么您可以使用 simpleforeacharray_splicelike创建自己的功能

$array=[1,2,3,4,5,6,7,8,9,10];

$arr = [3,3,4];
$result_arr = [];
foreach($arr as $k => $v){
    $result_arr[$k] = array_splice($array,0,$v);
}
print_R($result_arr);
Run Code Online (Sandbox Code Playgroud)

输出:

Array
(
    [0] => Array
        (
            [0] => 1
            [1] => 2
            [2] => 3
        )

    [1] => Array
        (
            [0] => 4
            [1] => 5
            [2] => 6
        )

    [2] => Array
        (
            [0] => 7
            [1] => 8
            [2] => 9
            [3] => 10
        )

)
Run Code Online (Sandbox Code Playgroud)