2012-03-23 148 views
1

我有一個嵌套的關聯數組是這樣的:關聯數組的鍵名

$inputTypes= array( 
    "natural" => array(
     "text", 
     "password", 
     "textarea", 
     "radio", 
     "checkbox", 
     "file" 
    ), 
    "hybrid" => array(
     "image", 
     "date" , 
     "url", 
     "email" 
    ) 
); 

我想打印的鍵名中,施用如下代碼:

foreach ($inputTypes as $inputs){ 
    echo key($inputTypes).'<br>'; 
} 

,但我得到這個輸出

hybrid 
hybrid 

我怎樣才能得到每個鍵的名稱,謝謝。

回答

8
foreach ($inputTypes as $key => $value){ 
    echo $key.'<br>'; 
} 
+0

感謝的人,它的工作原理。 – sbagdat 2012-03-23 02:51:15

+0

@sbagdat不客氣。 – jeroen 2012-03-23 02:51:47

2

這應該工作

foreach ($inputTypes as $key=>$value){ 
    echo $key.'<br>'; 
} 
0

試試這個:

foreach ($inputTypes['natural'] as $n) 
    echo "$n<br/>"; 

foreach ($inputTypes['hybrid'] as $h) 
    echo "$h<br/>"; 
0

在foreach計數器與內部數組指針衝突。

$c = count($inputTypes); 
for($i=0;$i<$c;$i++){ 
    echo key($inputTypes).'<br>'; 
    next($inputTypes); 
} 
1

您可以使用$鍵=> $ VAL

$inputTypes= array( 
     "natural" => array("text", "password","textarea", "radio", "checkbox", "file"), 
     "hybrid" => array("image", "date" , "url", "email") 
); 

foreach ($inputTypes as $key => $val){ 
    echo $key.'<br>'; 
}