分块阵列更有效率?

时间:2014-06-09 04:09:08

标签: php arrays loops

试图找出是否有更有效的方法来分块数组;我有一个可能相当大的数组,我需要把它分成 3 的多维数组,但只有 4

这是我到目前为止所做的工作;但问题是看看是否有更好/更快的替代方案。

$rows = array_chunk($array, 3);

$top = array();
for ($i = 0; $i < 3; $i++) {
    $top[] = $rows[$i];
}

注释

$rows数组看起来像这样:

array(
    [0] => name,
    [1] => name,
    [2] => name,
    .....etc
)

我只想将它看起来像这样:

array(
    [0] => array(
        [0] => name,
        [1] => name,
        [2] => name,
    ),
    [1] => array(
        [0] => name,
        [1] => name,
        [2] => name,
    ),
    [2] => array(
        [0] => name,
        [1] => name,
        [2] => name,
    ),
    [3] => array(
        [0] => name,
        [1] => name,
        [2] => name,
    )
)

对于那些不打扰阅读的人,我 已经有了可行的东西(如上所述),我只是想优化因为它很可能是最丑陋的方式。

1 个答案:

答案 0 :(得分:4)

//make sure to copy the sliced values into a different array
$slice = array_slice($array,0,12);
$rows = array_chunk($slice,3);