0


2 つの列 (value,value2) を比較して、等しいかどうかを確認し、次の行または要素に移動したいと考えています。これが私のコードです。

<?php
  $array = array( 
                         array('value'   =>  10, 'value2' => 1),
                         array('value'   =>  2, 'value2' => 15),
                         array('value'   =>  1, 'value2' => 12),
                         array('value'   =>  3, 'value2' => 13),
                         array('value'   =>  2, 'value2' => 12), //This will move 
                         array('value'   =>  4, 'value2' => 3),
                         array('value'   =>  5, 'value2' => 4),
                         array('value'   =>  5, 'value2' => 5),  //This will move
                         array('value'   =>  3, 'value2' => 4),  //This will move
                         array('value'   =>  4, 'value2' => 5),  //This will move
                         array('value'   =>  10, 'value2' => 5), //Ok reach minimum of 5 count
                         array('value'   =>  9, 'value2' => 3),
                         array('value'   =>  8, 'value2' => 3),
                         array('value'   =>  7, 'value2' => 4),
                         array('value'   =>  7, 'value2' => 8), // This will move
                         array('value'   =>  8, 'value2' => 6), // This will move
                         array('value'   =>  1, 'value2' => 5), //Ok reach minimum of 5 count
                         array('value'   =>  6, 'value2' => 4), 
                         array('value'   =>  6, 'value2' => 3),  // This will move  
                         array('value'   =>  19, 'value2' => 2) //Ok reach minimum of 5 count               
                );

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

for($x = 0, $numX =  count($chunks[0]); $x < $numX; $x++){
    for($y = 0, $numY = count($chunks); $y < $numY; $y++){
        if(isset($chunks[$y][$x]))
        //echo $x.' '.$y.'<br>';
        $array[] = $chunks[$y][$x];
    }
}
print_r($chunks);
?><br>

ご不明な点がございましたらお気軽にお問い合わせください。

前もって感謝します。

4

1 に答える 1