6 - Estructuras repetitivas (for - while - do while)
Las estructuras repetitivas son similares al lenguaje C, JavaScript, Java etc.
Estructura for:
for ([Inicialización de variable];[Condición];[Incremento de variable]) {
[Instrucciones];
}
El primer ejemplo que haremos es mostrar en la página los números del 1 al 100:
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
for ($f = 1; $f <= 100; $f++) {
echo $f;
echo "<br>";
}
?>
</body>
</html>
Quien no ha visto la estructura for en otro lenguaje pasamos a explicarla:
for ($f = 1; $f <= 100; $f++) {
echo $f;
echo "<br>";
}
El primer argumento del for es la inicialización de una variable, en este caso se inicializa la variable $f con el valor 1. Este primer argumento del for se ejecuta solo una vez. Luego se ejecuta el segundo argumento que es la condición. Si la misma se verifica como verdadera se ejecuta todo el bloque comprendido entre las llaves de apertura y cerrado. Luego de haberse ejecutado el bloque repetitivo se ejecuta el tercer argumento del for que es el incremento de la variable, en este caso $f++ incrementa el contenido de la variable $f en 1 (también podemos poner en lugar de $f++ la asignación $f=$f+1)
Luego del incremento de la variable se ejecuta nuevamente la condición del for (segundo argumento), de validarse nuevamente verdadero pasa a ejecutar el bloque repetitivo.
Este ciclo se repite hasta que la condición del for se verifica falsa.
La segunda estructura repetitiva es:
while (condición) {
[Instrucciones];
}
Esta estructura está en casi todos los lenguajes. El bloque se repite mientras la condición del while sea verdadera.
La condición del while se verifica antes de ingresar al bloque a repetir. Si la misma se verifica falsa la primera vez no se ejecutará el bloque.
Veamos un ejemplo: Generar un valor aleatorio entre 1 y 100, luego imprimir en la página desde 1 hasta el valor generado (de uno en uno):
<html>
<head>
<title>Problema</title>
</head>
<body>
<?php
$valor = rand(1, 100);
$inicio = 1;
while ($inicio <= $valor) {
echo $inicio;
echo "<br>";
$inicio++;
}
?>
</body>
</html>
La variable $inicio tiene el valor 1 antes de ingresar al while. Cada vez que se ejecuta una vez el bloque del while se incrementa $inicio en uno. Cuando $inicio supere la variable $valor finalizará la estructura repetitiva y pasará a ejecutarse la instrucción inmediatamente siguiente a la llave de cerrado del while.
Es importante notar que luego de la condición del while NO disponemos PUNTO y COMA.
Por último tenemos en el lenguaje una estructura repetitiva similar al while llamada do/while, donde la condición se verifica luego de ejecutarse el bloque repetitivo.
do {
[Instrucciones];
} while (condición);
Queda como tarea intentar hacer una página empleando esta estructura. Tener en cuenta que al final de la línea del do/while SI LLEVA punto y coma.