2011-05-04 80 views
3

我是新來的PHP,我試圖從一個字符串過濾掉一些的話,使用數組,這裏的數組:幫助大陣

$array_lugares = array 
(
array("barra"=>array 
(
/*SENTIDO BARRA*/ 
"Sao conrado"=>array("-22.999743","-43.270694"), 
"Elevado do Joa"=>array("-22.999429","-43.27317") 
), 
"zona sul"=>array 
(
/*SENTIDO ZONA SUL:*/ 
"passarela da barra"=>array("-23.008346","-43.303708"), 
"barra grill"=>array("-23,010576", "-43,302028"), 
"lagoa barra"=>array("-22,997348", "-43,263200") 
), 
"recreio"=>array 
(
/*SENTIDO RECREIO:*/ 
"passarela da barra"=>array("-23.008283","-43.303634"), 
"rio mar"=>array("22.999958","-43.402648"), 
"ribalta"=>array("-22,999753", "-43,409211") 
))); 

當我這樣做:

foreach($array_lugares[0]['zona sul'] as $lugar){ 
echo $lugar; 
echo "</br>"; 
} 

輸出爲:

Array 
Array 
Array 

我怎樣才能使它因此它顯示:

barra 
zona sul 
recreio 

在輸出中,有可能嗎?

回答

3
foreach($array_lugares[0] as $k => $lugar){ 
    echo $k; 
    echo "</br>"; 
} 
+0

這工作完全我想怎麼樣,謝謝 – 2011-05-04 03:42:05

1

那是因爲你有一個多維數組,可以遍歷$lugar;也和它會給你正確的輸出

更新:

foreach($array_lugares[0]['zona sul'] as $lugar){ 
    foreach ($lugar as $value) { 
    // further inside the array 

    } 

echo "</br>"; 

} 

但我想你應該重新審視你有的代碼,看看這是否真的是你想要使用你的數據的方式

0

這是因爲$array_logares[0]['zona sul']是給你的對象

array 
(
/*SENTIDO ZONA SUL:*/ 
"passarela da barra"=>array("-23.008346","-43.303708"), 
"barra grill"=>array("-23,010576", "-43,302028"), 
"lagoa barra"=>array("-22,997348", "-43,263200") 
) 

和每個元素的陣列(點)。如果你想要的名稱(而不是點的陣列),你可以這樣做:

foreach(array_keys($array_logares[0]['zona sul']) as $lugar) 

,如果你想要的名稱點,你可以這樣做:

foreach($array_lugares[0] as $name => $lugar)