viernes, 31 de enero de 2020

Php foreach while en array bidimensional asociativo

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.