2017-02-17 58 views
-1

我有一個用於顯示測量的二維數組。該數組包含63行(問題)。每行包含一個GpDesc(分組即領導特質)和一個QueDesc(問題)。有9種不同的GpDesc。我想在第一次出現時迴應GpDesc,然後回覆該組中的問題和單選按鈕,直到下一個GpDesc。我知道我需要一個外部循環來處理GpDesc的數量,並且需要一個內部循環來處理該組中的問題,但我不知道如何執行此操作。這裏是$ varArray的一部分:二維數組的回波值

Array ( 
    [0] => Array ( 
     [GpID] => 1168 
     [GpDesc] => LEADERSHIP TRAITS 
     [QueID] => 10266 
     [QueDesc] => Is visionary 
     [GpQue] => 0 
    ) 
    [1] => Array ( 
     [GpID] => 1168 
     [GpDesc] => LEADERSHIP TRAITS 
     [QueID] => 10267 
     [QueDesc] => Possesses high degree of integrity 
     [GpQue] => 0 
    ) 
    [2] => Array ( 
     [GpID] => 1168 
     [GpDesc] => LEADERSHIP TRAITS 
     [QueID] => 10268 
     [QueDesc] => Displays an enthusiastic, positive outlook 
     [GpQue] => 0 
    ) 
    [3] => Array ( 
     [GpID] => 1168 
     [GpDesc] => LEADERSHIP TRAITS 
     [QueID] => 10269 
     [QueDesc] => Uses good executive judgment 
     [GpQue] => 0 
    ) 
    [4] => Array ( 
     [GpID] => 1168 
     [GpDesc] => LEADERSHIP TRAITS 
     [QueID] => 10270 
     [QueDesc] => Provides effective leadership 
     [GpQue] => 0 
    ) 
    [5] => Array ( 
     [GpID] => 1168 
     [GpDesc] => LEADERSHIP TRAITS 
     [QueID] => 10271 
     [QueDesc] => Organizes and administers in a confident manner 
     [GpQue] => 0 
    ) 
    [6] => Array ( 
     [GpID] => 1168 
     [GpDesc] => LEADERSHIP TRAITS 
     [QueID] => 10272 
     [QueDesc] => Acts fairly and decisively on important issues 
     [GpQue] => 0 
    ) 
    [7] => Array ( 
     [GpID] => 1168 
     [GpDesc] => LEADERSHIP TRAITS 
     [QueID] => 10273 
     [QueDesc] => Displays effective strategic planning 
     [GpQue] => 0 
    ) 
    [8] => Array ( 
     [GpID] => 1168 
     [GpDesc] => LEADERSHIP TRAITS 
     [QueID] => 10274 
     [QueDesc] => Establishes appropriate goals and objectives 
     [GpQue] => 0 
    ) 
    [9] => Array ( 
     [GpID] => 1168 
     [GpDesc] => LEADERSHIP TRAITS 
     [QueID] => 10275 
     [QueDesc] => Defines appropriate priorities 
     [GpQue] => 0 
    ) 
    [10] => Array ( 
     [GpID] => 1168 
     [GpDesc] => LEADERSHIP TRAITS 
     [QueID] => 10276 
     [QueDesc] => Entertains new ideas 
     [GpQue] => 0 
    ) 
    [11] => Array ( 
     [GpID] => 1169 
     [GpDesc] => MANAGEMENT TRAITS 
     [QueID] => 10277 
     [QueDesc] => Involves faculty in strategic planning 
     [GpQue] => 0 
    ) 
    [12] => Array ( 
     [GpID] => 1169 
     [GpDesc] => MANAGEMENT TRAITS 
     [QueID] => 10278 
     [QueDesc] => Utilizes departmental advisory group or other clientele in decision making 
     [GpQue] => 0 
    ) 
    [13] => Array ( 
     [GpID] => 1169 
     [GpDesc] => 

有人可以幫忙嗎?

+1

你可以用'print_r($ array);'或者至少幾個發生的結果來替換那個轉儲嗎? – RiggsFolly

+0

對不起,這是它的一部分。 – AKAllen

+0

[無法輸出多維數組]的可能重複(http://stackoverflow.com/questions/31702980/cannot-output-multi-dimensional-array) –

回答

1
<?php 
$survey = 
Array(
       Array (
         'GpID' => 1168, 
         'GpDesc' => 'LEADERSHIP TRAITS', 
         'QueID' => 10266, 
         'QueDesc' => 'Is visionary', 
         'GpQue' => 0 
        ), 
       Array (
         'GpID' => 1168, 
         'GpDesc' => 'LEADERSHIP TRAITS', 
         'QueID' => 10267, 
         'QueDesc' => 'Possesses high degree of integrity', 
         'GpQue' => 0 
        ), 
       Array (
         'GpID' => 1169, 
         'GpDesc' => 'MANAGEMENT TRAITS', 
         'QueID' => 10277, 
         'QueDesc' => 'Involves faculty in strategic planning', 
         'GpQue' => 0 
        ), 
       Array (
         'GpID' => 1169, 
         'GpDesc' => 'MANAGEMENT TRAITS', 
         'QueID' => 10278, 
         'QueDesc' => 'Utilizes departmental advisory group or other clientele in decision making', 
         'GpQue' => 0 
        ) 
       ); 

echo $survey[0]['GpDesc'].PHP_EOL; 
$prevGpId = $survey[0]['GpID']; 

foreach ($survey as $line) { 
     if ($line['GpID'] !== $prevGpId) { 
       echo $line['GpDesc'].PHP_EOL; 
       $prevGpId = $line['GpID']; 
     } 
     echo "\t".$line['QueDesc'].PHP_EOL; 
} 
+0

非常感謝您的幫助!這正是我需要的。 – AKAllen