2015-08-27 47 views
0

經過多年的困惑之後,我試圖掌握PHP數組,特別是與foreach循環的組合。在簡單關聯數組中使用PHP foreach循環獲取密鑰

有各種類似的問題,但我真的想明白爲什麼這不是工作,而不是使其本身工作(很快將使用很多foreach循環和數組在更復雜的東西)。

$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"37"); 

有一個簡單的foreach循環:

foreach ($age as $ages) 
{ 
    n();n(); 
    echo($ages); 
    n(); 
    $v="volvo"; 
    $key = key($age); 
    if ($age["Ben"]==$ages) 
    { 
     echo "<BR><BR>Result is $key is $ages <BR>"; 
    } 
} 

輸出是:

35 
37 
Result is Ben is 37 
37 
Result is Ben is 37 

一切都很好,但我期待的姓氏是喬。

我認爲foreach作爲KEY VALUE對循環通過每個數組值對。那麼,我爲什麼要讓Ben兩次?

回答

1

使用foreach通過以下方式:foreach ($age as $name=>$personAge)

+0

由於已經看到,但試圖瞭解在原來的事情。我通過我的原始'$ key = key($ age)'訪問了什麼。爲什麼Ben是答案。它循環兩次,值爲37 ...第三次,VALUE是37,但它來自Joe ...是的,我可以使用'var => var'形式工作,但仍然困惑。感謝指針。 – BeNice

相關問題