La herramienta de control While de Php

Con la herramienta while podemos hacer que se ejecute una sentencia o varias mientras que se esté cumpliendo la condición que le digamos. Con esto, en un foro por ejemplo podríamos decirle al sevidor que vaya mostrando mensajes mientras que el número de mensajes ya mostrados no sea mayor que 20, para no llenar la pantalla de mensajes quedando demasiado larga. O en ese mismo foro podríamos permitir a un usuario fallar X veces antes de decirle que se vaya a buscar su contraseña. Pero se pueden hacer muchas más cosas, claro.

Como hicimos antes, vamos a verlo sobre un ejemplo.

<?php
  $x = 25 ;
  $y = 50 ;
  while ( $x < $y )
  {

    echo "<p>Vamos por el número $x.</p>" ;
    $x = $x + 1 ;
  }
?>

Al principio del código Php de arriba, hemos creado dos variables, una llamada x que vale 25 y otra llamada y que vale 50. Después nos encontramos con la palabra mágica while (que podríamos traducir como "mientras que...") seguida de una condición, que el valor de x sea menor que el valor de y.

Si se cumple la condición entonces se ejecuta lo que haya dentro de los corchetes { y }, es decir, las dos líneas siguientes. La primera ya la conoces muy bien. Es un echo que muestra en pantalla el mensaje "Vamos por el número 25."

La sentencia que va después es nueva. En esa línea le decimos al servidor que la variable $x ahora va a valer lo que valía antes más una unidad, y por tanto ahora su valor será 26. Como siempre, cerramos la sentencia con un punto y coma y como no queremos hacer nada más cerramos también el corchete.

Cuando el servidor llega al corchete regresa de nuevo a leer la condición. Ve que la variable $x que ahora vale 26 aún sigue siendo menor que 50, de modo que ejecuta otra vez esas dos líneas. Muestra el mensaje "Vamos por el número 26." y vuelve a sumarle uno a $x, valiendo ahora 27.

Todo esto se repite una y otra vez hasta que $x tenga un valor de 50. En ese caso como 50 no es menor que $y, no ejecuta más las sentencias de dentro de los corchetes y termina el asunto. Se iría a seguir leyendo el resto del programa, es decir, se iría tras el corchete de cierre del While.

Si aún recuerdas lo que te conté páginas atrás sabrás que si hubiera puesto los valores 25 y 50 entre comillas el servidor las habría interpretado como texto y este trozo de código no funcionaría, pues a la palabra 25 no le podemos sumar 1 siendo un texto (solo podemos sumarle si 25 es un número).

Te habrás dado cuenta que tienes que aprender un par de cosas para poder expresar tus ideas en forma de código Php. Por un lado tienes que aprender a escribir condiciones para poder hacer cosas cuando quieras que una variable sea mayor que otra, o menor, o igual, o mayor o igual, etc, etc. Por otro lado debes aprender a crear funciones. Una función es algo que transforma un valor en otro, como la línea $x = $x + 1. De todas formas, intentaremos explicarlo conforme lo necesitemos.