domingo, 17 de agosto de 2014

PHP (01) Control de flujo (05): for

Esta es sin duda una de mis instrucciones favoritas, ya que trata de repetir un trabajo una y otra vez, lo cual puede sacarnos de más de un apuro y de líneas y líneas de código, de hecho es sumamente simple, al menos en su funcionamiento original, siendo así:
for (desde; hasta; operador de la variable){
    instrucciones
}
Podemos observar que hay tres opciones a rellenar en un for:
  • desde: el valor inicial de la variable que controla el for
  • hasta: el valor final que indicará hasta donde llegará la variable
  • operador de la variable: que viene a ser un incremento de cremento de la variable por cada ciclo, aunque puede ser cualquier tipo de operación matemática lo normal es que sea $variable++ o $variable--
Un ejemplo de como funciona un bucle for puede ser el siguiente:
for($contador = 0; $contador < 6; $contador++){
    echo 'me mola el for ' . $contador . ' veces';
}
Este ejemplo nos muestra como el bucle se repetirá 6 veces mostrando desde el 0 al 5 el contador, incrementándose una vez por vuelta.

Es bastante común encontrar que la variable de los for sea variables de nombres simples como $i o $j, ya que se utilizan solo para el for en cuestión.

De hecho una operación fantástica, muy utilizada en arrays, son los for dobles, es decir, anidar un for dentro de otro y obtener resultados como el siguiente:
for($i = 0; $i <= 10; $i++){
 echo '<h2>Tabla del '. $i .'</h2>';
 for($j = 0; $j <= 10; $j++){
  $multiplo= $i * $j;
  echo $i .' * ' . $j . ' = ' . $multiplo . '[br/]';
 }
 echo '[br/]';
}
Como puedes ver con tan solo 8 líneas de código obtenemos más de 100 de resultado, con las tablas de multiplicar.... imagina el tiempo y esfuerzo de hacerlo tu a base de múltiplo por múltiplo.
el primer for nos da el primer numero de la tabla y lo muestra en su echo, el segundo nos da el segundo y muestra el resultado de la operación hasta que cumple su condición, luego sigue el primer bucle que nos da el salto de línea y repite el primer for con un aumento del contador.
¿Magia? no, simplemente algoritmia....

No hay comentarios:

Publicar un comentario