1

重複の可能性:
phpは配列をより小さな偶数配列に分割します

配列を複数の部分にスライスするにはどうすればよいですか? この配列があるとしましょう:

$arr = range(1, 15);

どうすればこの結果を得ることができますか:

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

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

    [2] => Array
       ............
)

私がこれまでに試したこと:

$parts = 3;
$slices = array();

for($i=0; $i<($parts * $parts); $i=$i+$parts){
  $sliced = array_slice($arr, $i, (count($arr) / $parts));
  array_push($slices, $sliced);
}

10要素未満の配列でのみ正常に動作しているようで、そのコードが実際に機能する理由と方法について混乱させられます.それは私にも静的ではないようです..それを行う他の方法や修正はありますかコード?

4

1 に答える 1

7

array_chunk独自の関数を記述する代わりに、組み込み関数を使用できます。

$chunks = array_chunk($arr, 3);
于 2012-11-11T21:26:44.220 に答える