Помогите с большим массивом - PullRequest
3 голосов
/ 04 мая 2011

Я новичок в 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 ]

3 голосов
/ 04 мая 2011
 foreach($array_lugares[0] as $k => $lugar){
   echo $k;
   echo "</br>";
 }
1 голос
/ 04 мая 2011

Это потому, что у вас есть многомерный массив, вы также можете циклически проходить через $lugar;, и он даст вам правильный вывод

Обновление:

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

   }

 echo "</br>"; 

} 

но я думаю, что выследует пересмотреть код, который у вас есть, и посмотреть, действительно ли вы хотите работать с вашими данными

0 голосов
/ 04 мая 2011

это потому, что $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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...