(PHP)将数组分成多维

时间:2011-03-31 10:16:56

标签: php arrays multidimensional-array

目前我有一系列数据[0] - [574]。

我想做的是将它分成25个部分的多维数组,如下[0] - [22]:

Array
(
    [0] =>
        [0] => abc
        ...
        [22] => xyz
    [1] =>
        [0] => abc
        ...
        [22] => xyz
    ...
}

我认为可以使用for循环将其全部拆分 - 我已经尝试了一些方法,但似乎还没到达那里!

由于

-mango

3 个答案:

答案 0 :(得分:7)

that有一个内置函数:

$parts = array_chunk($array, 23);

答案 1 :(得分:1)

我只是used虚拟数据,但你会明白这一点:

// Set up input with dummy data
$input = array();
for ($i = 0; $i < 574; $i++) {
        $input[] = $i . 'aaa';
}

$out = array();
for ($i = 0, $j = sizeof($input); $i < $j; $i++) {
        $bucket = floor($i / ($j / 25));
        if (!isset($out[$bucket])) {
                $out[$bucket] = array();
        }
        $out[$bucket][] = $input[$i];
}

print_r($out);

答案 2 :(得分:1)

$array = array();
$chunks = ceil(count($array) / 25);
$new = array_chunk($array, $chunks);