Aqui podemos ver dos ejemplos de como recorrer un array bidimensional asociativo.
1. Foreach anidado.
2. Select co un while.
/////////////
1.
/* INICIO CIUDADES BARRIOS CON FOREACH */
$barrios
=
array
(
"Palma"
=>
array
(
"Barrio PM01 | CP: PM01"
,
"Barrio PM02 | CP: PM02"
,
"Barrio PM03 | CP: PM03"
,
"Barrio PM04 | CP: PM04"
,
"Barrio PM05 | CP: PM05"
,
"Barrio PM06 | CP: PM06"
),
"Manacor"
=>
array
(
"Barrio MN01 | CP: MN01"
,
"Barrio MN02 | CP: MN02"
,
"Barrio MN03 | CP: MN03"
,
"Barrio MN04 | CP: MN04"
,
"Barrio MN05 | CP: MN05"
,
"Barrio MN06 | CP: MN06"
),
"Inca"
=>
array
(
"Barrio IN01 | CP: IN01"
,
"Barrio IN02 | CP: IN02"
,
"Barrio IN03 | CP: IN03"
,
"Barrio IN04 | CP: IN04"
,
"Barrio IN05 | CP: IN05"
,
"Barrio IN06 | CP: IN06"
)
);
foreach
(
$barrios
as
$barrio
=>
$nombre
)
{
echo
"<h2> $barrio</h2>"
;
foreach
(
$nombre
as
$indice
=>
$valor
)
{
echo
"<p>"
.(
$indice
+1).
"º. "
.
$valor
.
"</p>"
;
}
}
/* FINAL CIUDADES BARRIOS FOREACH */
echo
"<hr>"
;
///////////////////////
2.
/* INICIO CIUDADES BARRIOS SELECT CON WHILE */
$distritos
=
array
(
"Palma"
=>
array
(
"Barrio PM01 | CP: PM01"
,
"Barrio PM02 | CP: PM02"
,
"Barrio PM03 | CP: PM03"
,
"Barrio PM04 | CP: PM04"
,
"Barrio PM05 | CP: PM05"
,
"Barrio PM06 | CP: PM06"
),
"Manacor"
=>
array
(
"Barrio MN01 | CP: MN01"
,
"Barrio MN02 | CP: MN02"
,
"Barrio MN03 | CP: MN03"
,
"Barrio MN04 | CP: MN04"
,
"Barrio MN05 | CP: MN05"
,
"Barrio MN06 | CP: MN06"
),
"Inca"
=>
array
(
"Barrio IN01 | CP: IN01"
,
"Barrio IN02 | CP: IN02"
,
"Barrio IN03 | CP: IN03"
,
"Barrio IN04 | CP: IN04"
,
"Barrio IN05 | CP: IN05"
,
"Barrio IN06 | CP: IN06"
)
);
?>
<select name=
"barri"
>
<option>SELECCIONA TU BARRIO</option>
<?php
while
(
$distrito
= current(
$distritos
)) {
echo
"<optgroup label='"
.key(
$distritos
).
"'>"
;
foreach
(current(
$distritos
)
as
$barrio
)
{
echo
"<option value='"
.
$barrio
.
"'>"
.
$barrio
.
"</option>"
;
}
echo
"</optgroup>"
;
next(
$distritos
);
}
echo
"<hr>"
;
///////////////////////
?>
</select>
<!-- FINAL CIUDADES BARRIOS SELECT CON WHILE -->
<?php
echo
"<hr>"
;
///////////////////////
No hay comentarios:
Publicar un comentario
Gracias por vuestros aportes.