将阵列拆分为不同大小的块

472*_*084 1 php arrays

我有一个数组:

Array
(
    [0] => 0
    [1] => 1
    [2] => 2
    [3] => 3
    [4] => 4
    [5] => 5
    [6] => 6
    [7] => 7
    [8] => 8
    [9] => 9
)
Run Code Online (Sandbox Code Playgroud)

我想将数组分成大小为2,然后是3然后是2然后是3等的块:

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

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

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

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

)
Run Code Online (Sandbox Code Playgroud)

到目前为止我什么都没有,想不到一个简单的方法可以做到这一点!谢谢.

Ist*_*Őri 5

这应该工作:

$a = array(0 => 0,1 => 1,2 => 2,3 => 3,4 => 4, 5 => 5, 6 => 6,7 => 7,8 => 8,9 => 9);
$chunks = array();
$i=1;
while(count($a)){
    $chunks[] = array_splice($a, 0,(2+($i%2)),array());

    $i++;
}

echo "<pre>";
var_dump($chunks);
Run Code Online (Sandbox Code Playgroud)