2012-03-04 147 views
-1

我有一個數組稱爲$用戶(如下圖),我想打印FIRST_NAME姓氏在一起。打印多維數組,在PHP

Array 
(
    [first_name] => Array 
     (
      [0] => John 
      [1] => Tom 
     ) 

    [last_name] => Array 
     (
      [0] => McDonald 
      [1] => Terry 
     ) 

) 

我用foreach循環,但問題是,foreach循環打印:

foreach ($users['first_name'] as $key => $first_name) { 
    foreach ($users['last_name'] as $key => $last_name) { 
     echo "$first_name "; 
     echo "$last_name<br />"; 

    } 

} 

結果:

John McDonald --> that's what I want 
John Terry --> I don't want this 
Tom McDonald --> I don't want this 
Tom Terry --> That's what I want 

我把破我的foreach循環裏面我再次沒有得到我想要的正確結果。

注:我知道如何使用循環,但由於用戶數量我的數據庫內改變來解決這個問題,我不知道很多for循環如何計算我需要的,除非我數數數組中的行,並基於此進行for循環分析。但我不想用循環,有沒有人知道更好的方法來做到這一點?

回答

6

只要你使用$key的值,你不需要預先確定計數,事實上你甚至不需要內部循環。

foreach ($users['first_name'] as $key => $first_name) { 
    // no inner loop needed. 
    // Use $key to retrieve the associated last_name 
    echo "$first_name {$users['last_name'][$key]}\n"; 
} 

// Output: 
// John McDonald 
// Tom Terry