0

私の配列には動的な量の要素が含まれています。それらは4つにグループ化されています。

array
 [0] -> "group one"
 [1] -> "group one"
 [2] -> "group one"
 [3] -> "group one"

 [4] -> "group two"
 [5] -> "group two"
 [6] -> "group two"
 [7] -> "group two"

 [8] -> "group three"
 [9] -> "group three"
 [10] -> "group three"
 [11] -> "group three"

私がやりたいことは、1つのループで各グループのすべての要素を出力してテストし、追加してから次のグループで同じことを行うことです。

簡単だと思います..カウンターを使用して出力数などを追跡しますが、どうやら私の脳はこの問題で適切に機能しません:)

私を助けてくれる人に感謝します:)

4

2 に答える 2

1

array_chunkを見てください。

<?php
foreach(array_chunk(range(1, 12), 4) as $index => $chunk) {
    echo "Printing Chunk $index\n";
    foreach($chunk as $number) {
        echo "$number\n";
    }
}

/*
    Printing Chunk 0
    1
    2
    3
    4
    Printing Chunk 1
    5
    6
    7
    8
    Printing Chunk 2
    9
    10
    11
    12
*/

アンソニー。

于 2013-05-12T11:58:08.137 に答える
0
<?php

$length = count($array);

// the first element of each group is indexed by $i
// so the second element can be accessed by $i + 1, the third by $i + 2, ...
for($i = 0; $i < $length; $i += 4)
{
    echo "1. element: " . $array[$i];
    echo "2. element: " . $array[$i+1];
    echo "3. element: " . $array[$i+2];
    echo "4. element: " . $array[$i+3];

    // do something
}

?>
于 2013-05-12T12:01:23.493 に答える