Saltar la navegación

2.2.- Bucles.

Imagen que representa un bucle repetitivo.
dannya (Dominio público)

Los bucles o sentencias repetitivas son estructuras que permiten repetir una secuencia de sentencias mientras se de cierta condición.

  • while: Usando while puedes definir un bucle que se ejecuta mientras se cumpla una expresión. La expresión se evalúa antes de comenzar cada ejecución del bucle.
    <?php
        $a = 1;
        while ($a < 8){
            $a += 3;
        }
        echo $a; // el valor obtenido es 10
    ?> 
  • do / while: Es un bucle similar al anterior, pero la expresión se evalúa al final, con lo cual se asegura que la sentencia o conjunto de sentencias del bucle se ejecutan al menos una vez.
    <?php
        $a = 5;
        do{
            $a -= 3;
        }while ($a > 10);
        print $a; // el bucle se ejecuta una sola vez, con lo que el valor obtenido es 2
    ?> 
  • for: Son los bucles más complejos de PHP. Al igual que los del lenguaje C, se componen de tres expresiones:
    for (expr1; expr2; expr3){
         sentencia o conjunto de sentencias; 
    }
    La primera expresión, expr1, se ejecuta solo una vez al comienzo del bucle.

    La segunda expresión, expr2, se evalúa para saber si se debe ejecutar o no la sentencia o conjunto de sentencias. Si el resultado el false, el bucle termina.

    Si el resultado es true, se ejecutan las sentencias y al finalizar se ejecuta la tercera expresión, expr3, y se vuelve a evaluar expr2 para decidir si se vuelve a ejecutar o no el bucle.

    <?php
        for ($a = 5; $a<10; $a+=3) {
            print $a; // Se muestran los valores 5 y 8
            print "<br />";
        }
    ?> 

    Puedes anidar cualquiera de los bucles anteriores en varios niveles. También puedes usar las sentencias break, para salir del bucle, y continue, para omitir la ejecución de las sentencias restantes y volver a la comprobación de la expresión respectivamente. break acepta un argumento numérico opcional que indica de cuántas estructuras anidadas circundantes se debe salir y de igual manera continue también acepta un argumento numérico opcional, que indica a cuántos niveles de bucles encerrados se ha de saltar al final. 

Autoevaluación

Pregunta

Si quieres mostrar una cadena de texto letra a letra, y no sabes si está vacía, ¿qué tipo de bucle emplearías, while o do-while?

Respuestas

while.

do-while.

Retroalimentación