Traductor

Bucles en PHP

Los bucles son una estructura de control que permiten que una secuencia determinada de instrucciones, conocida genéricamente como el "cuerpo del bucle, se ejecute mas de una vez.
Dentro de los Bucles se consideran dos tipos principales:
  • Aquellos que se ejecutan atendiendo a una condición numérica.
  • Aquellos que se ejecutan atendiendo a una condición NO necesariamente numérica.

Bucles mediante condición Numérica

Cuando necesitamos que una secuencia de instrucciones se ejecute n veces, recurrimos a la estructura for().  Está definida mediante una variable de control, que es la encargada de determinar el número de iteraciones.
La estructura obedece al siguiente patrón:
for(inicio; condición; paso){
          cuerpo del bucle;
}
En este esquema:
  • inicio: Es el valor inicial que se le asigna a la variable de control.
  • condición: Establece el valor que se debe alcanzar para que se deje de ejecutar el bucle.
  • paso: Es la forma en que se modifica la variable de control
Veamos un ejemplo para esclarecer un poco mas el funcionamiento de este script:
<?php
        for ($varCon=1$varCon<=10$varCon++) {
                  echo ($varCon."<br />");
        }
?>
Lo que veremos en el navegador sera:

Paso a Paso

  • En primer lugar, vemos que siguiendo el patrón que hemos definido anteriormente, tenemos una variable de control a la que hemos llamado $varCon.
  • En el primer término de la estructura, establecemos que el  valor inicial de la variable es 1.
  • A continuación, tras el signo de punto y coma, indicamos que el bucle debe iterar mientras que la variable de control tenga un valor menor o igual a 10.
  • Por último, en la tercera parte de la estructura, establecemos que, tras cada iteración, el valor de la variable de control debe ser incrementado en una unidad.
Teniendo estos conceptos en mente nosotros podemos modificar el comportamiento del bucle de acuerdo  nuestras necesidades, veamos los siguientes problemas y trate de resolverlos sin ver la respuesta, y después corrobore su resultado:
  • Realice un bucle como el anterior, pero que la cuenta valla del 10 al 1.

  • Ahora suponga que no queremos que la variable de control se modifique en una unidad en cada iteración, sino en dos. Cree la cuenta hacia atrás solo con los números pares:




Ahora realicemos un ejemplo mas complicado, y en esta ocasión lo que vamos a hacer, será combinar una matriz con la estructura de bucle; observe el siguiente script:
<?php
//Se crea la matriz.
                $nombres=array ("Pedro", "Ismael", "Sonia", "Clara", "Susana", "Alfonso", "Teresa");
//Se determina el número de elementos de la matriz.
                $elementos=count ($nombres);
//Un bucle lleva la cuenta hasta que se recorren todos los elementos.
                for ($varCon=0; $varCon<$elementos; $varCon++) {
                               echo ($nombres[$varCon]."<br />");
                }
?>
Que es lo que ha sucedido con el bucle:
  • En primer lugar, el valor inicial de la variable de control se ha establecido en cero.
    • Esto es lógico, ya que recuerde que las matrices comienzan su numeración con el cero.
  • Después se ha programado el bucle para que itere mientras la variable de control sea menor que el número total de elementos de la matriz. 
  • Como tiene siete nombres, el bucle se ejecutará mientras la variable de control tenga un valor comprendido entre 0 y 6.
De esta manera lo que veremos en el navegador será:
Una operación muy común y muy útil en ocasiones es la de anidamiento de bucles. La cual consiste en meter un bucle dentro de otro, de forma que, para cada iteración del bucle externo, el bucle interno se ejecuta en todas sus iteraciones.
  • Suponga que tiene que hacer un script que simule el recorrido de un edificio de cinco plantas.
  • En cada planta hay cuatro viviendas.
  • Nuestro script debe recorrer cada una de las cuatro viviendas de la primera planta, para después recorrer las cuatro viviendas del segundo piso y así sucesivamente.
<?php
       for ($piso=1;$piso<=5;$piso++) {
                   for ($puerta=1;$puerta<=4;$puerta++) {
                          echo ("Piso: $piso. - Puerta: $puerta.<br />");
                   }
       }
?>
Como ve, tenemos dos bucles. Cada uno usa su propia variable de control. La del bucle exterior la hemos llamado $piso y se refiere a cada una de las plantas del edificio. La del bucle interno se llama $puerta y alude a cada una de las viviendas por piso.
Al cargar el script veremos lo siguiente:
Pues bien, por el momento es todo, en la siguiente publicación veremos lo que son los "Bucles mediante condición no numérica", que corresponden a la segunda parte de este tema, pero por el momento es importante que repase bien este capítulo.

Recuerden Comentar Compartir y Darle 

Hasta la Próxima

Si te hemos ayudado : )
Te agradeceríamos que apoyaras este proyecto

0 comentarios:

Publicar un comentario