-3

次の多次元配列があります。

Student Name Exam Result Exam Grade
David 79 1H
Brian 54 2H2
Lisa 55 2H2
Simone 58 2H2
Francis 78 1H
Shauna 53 2H2
Sean 40 Pass
Xavier 95 1H
Tom 60 2H1
Andy 66 2H2

そして、各特定の成績が試験で何回達成されたかをカウントする関数を作成する必要があります。たとえば、3 つの「1H」が達成されました。何か案は?

$exam = array ( "names"  => array (  "David",
                                     "Brian",
                                     "Lisa",
                                     "Simone",
                                     "Francis",
                                     "Shauna",
                                     "Sean",
                                     "Xavier",
                                     "Tom",
                                       "Andy"
                                     ),
                  "results" => array ( 79,
                                       54,
                                       55,
                                       58,
                                       78,
                                       53,
                                       40,
                                       95,
                                       60,
                                       66
                                     ),
                    "grades" => array ( "1H",
                                       "2H2",
                                      "2H2",
                                       "2H2",
                                       "1H",
                                       "2H2",
                                       "Pass",
                                       "1H",
                                       "2H1",
                                       "2H1"
                                     ),
                );
4

1 に答える 1

0

array_count_valuesを使用する

 foreach(array_count_values($array['grades']) as $grade => $count){
     echo $grade.' achieved '.$count. ' times'.PHP_EOL;
 }
于 2013-04-29T19:37:09.910 に答える