En esta entrada del taller de PHP vamos a comenzar a realizar algún ejercicio.

Como hemos mencionado varias veces este no es un curso completo en PHP, son diferentes talleres para ir comprendiendo o profundizando en cosas.

Hoy vamos analizar el bucle for.

Para mí y supongo que para muchos programadores, el bucle for es una de las herramientas más potentes en PHP y otros programas. Creo que en su simplicidad se basa el poder que tiene. Con él se pueden hacer miles de cosas, está presente en todas las aplicaciones realizadas y por realizar. Simplifica las tareas con dos lineas de código. Pero vamos con un ejemplo típico:

Imaginemos que queremos realizar las tablas de multiplicar del 1 al 10.

<?php //Programa de tablas de multiplicar
for ($tabla=1; $tabla <=10 ; $tabla++){
//En la siguiente línea sacamos la tabla que estamos realizando
	echo 'Tabla del '.$tabla.'<br />';
for ($x=1; $x <=10 ; $x++){
//En la siguiente línea sacamos la operaciones del 1 al 10 de cada tabla
	echo '[ '.$tabla.' * '.$x.' = '.$tabla*$x.' ] ';
}
echo '<hr />';
}
?>

Si ejecutamos este código podemos ver:

php_tablas

Si os fijáis de una forma rápida podemos realizar las tablas de multiplicar. Lo importante es entender el concepto para poder dar rienda suelta a nuestros programas:

for(EXPRESIÓN-INICIAL:instruccion1; CONDICIÓN:que valoramos para hacer la acción; EXPRESIÓN FINAL:Una vez valorada la acción que hacemos){
Lo que realizamos dentro del bucle hasta que se cumpla la condición.
}

  • EXPRESIÓN INICIAL: Le decimos lo que vale nuestra variable, array, función, etc…
  • CONDICIÓN: Se debe cumplir la condición para salir del bucle. Hasta que no se cumpla que se ejecute la EXPRESIÓN FINAL.
  • EXPRESIÓN FINAL: Si no se cumple la CONDICIÓN para salir del bucle, ejecutamos la EXPRESIÓN FINAL.

En el programa descrito:

<?php //Programa de tablas de multiplicar
for ($tabla=1; $tabla <=10 ; $tabla++){
/* en esta línea la variable $tabla nos sirve para disponer de números del 1 al 10 - Serán las tablas de multiplicar*/
	echo 'Tabla del '.$tabla.'<br />';
for ($x=1; $x <=10 ; $x++){
/* aprovechamos la variable $tabla para el numero de inicio y la tabla que estamos ejecutando y la variable $x para obtener los otros 10 números de cada tabla con ello ya disponemos de todo lo necesario para ejecutar las tablas del 1 al 10 */
	echo '[ '.$tabla.' * '.$x.' = '.$tabla*$x.' ] ';
}/*Se cierra el bucle del 1 al 10 de la variable $x y se repite el bucle de $tabla hasta que llegue a 10*/
echo '<hr />';
} /*Cuando se cumple el bucle de las tablas del 1 al 10 se cierra el bucle $tabla llega a tener el valor de 10*/
?>

Espero que no sea muy lioso. Los más expertos no tendrán ningún problema.