2012-03-30 4 views
0

私は以下のような結果配列を持っています。連想配列計算

 
Array 
(
    [10] => Array 
     (
      [0] => Array 
       (
        [iPlannedCourseId] => 56 
        [fCreditHours] => 15.25 
       ) 

      [1] => Array 
       (
        [iPlannedCourseId] => 57 
        [fCreditHours] => 14.50 
       ) 

     ) 

    [11] => Array 
     (
      [0] => Array 
       (
        [iPlannedCourseId] => 58 
        [fCreditHours] => 12.25 
       ) 

      [1] => Array 
       (
        [iPlannedCourseId] => 59 
        [fCreditHours] => 14.75 
       ) 

      [2] => Array 
       (
        [iPlannedCourseId] => 60 
        [fCreditHours] => 15.25 
       ) 

     ) 

) 

私は親キーごとにfCreditHoursの合計が必要です。あなたがarray_walk_recursiveとarray_mapを組み合わせて試すことができますが(あるarray_walkで試すことができ、すなわち をループを使用せずに任意の関数、

 
Array 
(
     [10] = > 29.75 
     [11] = > 42.25 
) 

+5

だから何があなたが実際に試してみました...あなたは、配列をループで見ていますか?コーディングの問題についてはお手伝いしますが、書きません –

+0

ループは、配列の各要素を特に呼び出さずに、最も簡単な方法になります –

答えて

0

があります。

私はこれがあなたにとって有用であると思う:

$a = array(100,300, 
        array(
         2, 
         4, 
         ), 
         array(
         13, 
         80, 
         ), 
         array(
         40, 
       50, 
         ),2.2,420,       
       ); 


$max = 0; 

array_walk_recursive($a, 'arrmax'); 
function arrmax($item, $key) { 
    global $max; 
    $max = ($item > $max) ? $item : $max; 

} 
echo "Maximum Value is : " . $max;