Los ciclos en las estructuras de control de PHP sirven para hacer tareas repetitivas que se requieren automatizar. Un ejemplo muy común es para crear una tabla HTML a partir de datos contenidos en una tabla SQL. De acuerdo con la documentación oficial, el ciclo for es de los más complejos y su sintaxis es similar a C
for
for (expresión 1, expresión 2, expresión 3) sentencia
Donde la expresión 1 se evalúa y se ejecuta siempre por primera vez. Luego se evalúa la expresión 2 y en caso de resultar cierta, se ejecuta la sentencia. Si el resultado de la ejecución es verdadera, entonces se ejecuta la expresión 3 y continúa el bucle. Veamos un ejemplo:
//ciclo for for($i=1; $i <= 10; $i++) { echo $i." - "; } //esto da como salida: 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 -
No abundaremos más en este tipo debido a que no lo usaremos mucho durante el curso.
while
while(expresión)
sentencia
Los bucles while son los más sencillos en PHP, básicamente va a ejecutar la sentencia del bloque siempre que la expresión sea verdadera. Este ciclo lo vamos a utilizar sobre todo para recorrer objetos resultados de consultas a bases de datos. Vamos a ver un ejemplo donde esté consultando a una tabla SQL
//creamos una instancia de la clase MySQLi - servidor, user, pass, db $sql = new MySQLi("localhost","phpalbum","contraseña","phpalbum"); //generamos la consulta SQL $res = $sql<Query("SELECT * FROM test"); //expresión: mientras el resultado de $res-<fetch_object() se pueda asignar a $k (y por lo tanto sea verdadero) while($k = $res--->fetch_object()) { //mostramos el contenido del objeto $k print_r($k); } //cerramos la conexión a la base de datos. $sql->close();
Al ejecutar ese código, nos regresaría algo como lo siguiente:
Listo, durante el desarrollo del curso iremos viendo más ejemplos.
foreach
El constructor foreach es la forma más sencilla de recorrer el contenido de un array o un objeto. Es una forma simplificada del uso de for.
<?php //creamos un array $patos = array( 'uno' => 'Hugo', 'dos' => 'Paco', 'tres' => 'Luis' ); //recorremos el contenido del array, con foreach: foreach($patos AS $indice => $valor) { echo "El pato $indice se llama $valorn"; } /* //resultará: El pato uno se llama Hugo El pato dos se llama Paco El pato tres se llama Luis */
En las siguientes lecciones veremos más el uso de while y foreach. Por supuesto hay otras estructuras de control y diferentes sintaxis, pero las que mencionamos son las más comunes. Esta entrada es parte del curso Crear un álbum fotográfico con PHP.
http://tar.mx/log/wp-content/uploads/2015/09/Captura-de-pantalla-2015-09-07-a-las-14.26.07.png