2016-10-13 7 views
1

は私がに基づいてテーブルをソートする必要が問題と私です複数の配列をグループ化するか結合しますか?私はこの配列持つ "palier" の</p> <p>の1-能力</p> <p>2レベル</p> <p>:ここ

[C2.1] => Array 
     (
      [palier] => Array 
       (
        [0] => 1 
        [1] => 2 
        [2] => 1 
       ) 

      [note] => Array 
       (
        [0] => 12.00 
        [1] => 13.00 
        [2] => 15.00 
       ) 


     ) 

をし、私は欲しいと思います:

[C2.1] => Array 
     (
      [palier] => Array 
       (
        [1] => Array 
         (
          [note] => Array 
           (
            [0] => 12.00 
            [1] => 15.00 

           ) 

         ) 

         [2] => Array 
         (
          [note] => Array 
           (
            [0] => 13.00 

           ) 

         ) 

     ) 

私は私が最初にこのコードの配列

foreach ($row5 as $key =>$values) 
{ 
    $val3 = preg_split('/;|,/', $values['cve']); 
    $val5 = preg_split('/;|,/', $values['note']); 
    $val6 = preg_split('/;|,/', $values['palier']); 
    for ($i = 0; $i < count($val3); $i++) 
    { 

$resultat2[$val3[$i]]['palier'][]= $val6[$i]; 
$resultat2[$val3[$i]]['note'][] = $val5[$i]; 
$resultat2[$val3[$i]]['nombre'] = count($resultat2[$val3[$i]]['note']); 
$resultat2[$val3[$i]]['moyenne'] = round(array_sum($resultat2[$val3[$i]]['note'])/count($resultat2[$val3[$i]]['note']),2); 
    } 

} 

でも、私の2番目の配列は助けてください!

+0

プログラミング言語用のタグを追加する必要があります。 – Marco13

+0

キー "palier"がその配列に2回現れるので、要求された配列を作成することはできません。 – Xenos

+0

どうしたらいいですか? – user2880176

答えて

0
foreach ($c21['palier'] as $p=>$group) { 
    if (!array_key_exists($group, $result)) { 
    $result[$group] = array('note' => array()); 
    } 
    $result[$group]['note'][] = $c21['note'][$p]; 
} 

イテレーターなどでも実行できますが、KISS♥としましょう。

関連する問題