Estructuras repetitivas for y foreach en PHP

Bienvenido a una nueva lección de nuestro curso básico de PHP 8. Hoy vamos a meternos con las estructuras repetitivas for y foreach, dos herramientas súper potentes para repetir acciones como si fueras un DJ mezclando pistas. Si ya dominas while y do-while, esto te va a encantar porque subimos el nivel. Todo va a ser claro, práctico y con ejemplos que te van a flipar. ¡Empecemos! 

¿Qué son las estructuras repetitivas for y foreach? 

Las estructuras for y foreach son bucles que repiten un bloque de código mientras algo sea cierto, como los while que ya conoces. Pero cada uno tiene su superpoder: 

  • for: Ideal cuando sabes cuántas veces quieres repetir algo. Es como un temporizador preciso. 
  • foreach: Perfecto para recorrer arreglos (listas) sin preocuparte por contar. Es como un guía automático. 

Ambos te ayudan a automatizar tareas repetitivas, como imprimir números o checar elementos uno por uno. 

La estructura for: Repite con control total 

El bucle for es tu amigo cuando tienes claro cuántas vueltas necesitas dar. Mira la fórmula mágica: 

for (inicialización; condición; incremento/decremento) { 
    // Código que se repite en cada vuelta 
} 
  • Inicialización: Donde arrancas (ejemplo: $i = 1). 
  • Condición: Mientras sea true, el bucle sigue (ejemplo: $i <= 10). 
  • Incremento/Decremento: Cómo cambias cada vez (ejemplo: $i++). 

Ejemplo práctico con for 

¡Manos a la obra! Crea un archivo repetitivas_for.php en curso_php8 (dentro de C:\xampp\htdocs) y prueba esto: 

<?php 
    for ($i = 1; $i <= 10; $i++) { 
        echo $i . ", "; 
    } 
?> 

Abre http://localhost/curso_php8/repetitivas_for.php. Verás:  

1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 


¿Qué pasó? 

  • $i empieza en 1. 
  • Mientras $i <= 10 sea true, imprime $i y suma 1 con $i++. 
  • Cuando $i llega a 11, la condición falla y para. 

Variando el for con break 

A veces quieres salir antes. Prueba esto: 

<?php 
    for ($j = 1; ; $j++) { 
        if ($j > 8) { 
            break; // ¡Para aquí! 
        } 
        echo $j . ", "; 
    } 
?>

Resultado:  

1, 2, 3, 4, 5, 6, 7, 8, 


¿Cómo funciona?  

  • No pusimos condición en el medio (dejamos ; ;), así que podría ser infinito. 
  • Pero con if ($j > 8) y break, forzamos la salida cuando $j pasa de 8. 

La estructura foreach: El rey de los arreglos 

El bucle foreach es tu as bajo la manga para recorrer arreglos sin complicarte. Solo necesitas el arreglo y una variable para cada elemento. Aquí va la receta: 

foreach ($arreglo as $valor) { 
    // Código que se repite por cada elemento 
} 

O con clave y valor: 

foreach ($arreglo as $clave => $valor) { 
    // Código usando clave y valor 
} 

Ejemplo práctico con foreach 

Añade esto a tu repetitivas_for.php:

?php 
    $numeros = array(1, 2, 3, 4, 5); 
 
    foreach ($numeros as $valor) { 
        $valor *= 2; 
        echo $valor . ", "; 
    } 
?> 

Resultado:  

2, 4, 6, 8, 10, 

¿Qué pasó?  

  • $numeros es un arreglo con 5 valores. 
  • foreach toma cada $valor, lo multiplica por 2 y lo imprime. 

Con nombres y claves 

Prueba este otro: 

<?php 
    $frutas = array("Naranja", "Uva", "Manzana", "Frutilla"); 
 
    foreach ($frutas as $indice => $fruta) { 
        echo "Fruta $indice: $fruta<br>"; 
    } 
?>

Resultado:  

Fruta 0: Naranja 
Fruta 1: Uva 
Fruta 2: Manzana 
Fruta 3: Frutilla 

¿Cómo funciona?  

  • $indice es la posición (0, 1, 2…) y $fruta el valor. 
  • foreach recorre todo automáticamente, sin contar manualmente. 

Ejemplos prácticos para brillar 

Ejemplo 1: Pares del 2 al 10 

<?php 
    for ($i = 2; $i <= 10; $i += 2) { 
        echo "$i, "; 
    } 
?> 

Resultado:  

2, 4, 6, 8, 10, 

Ejemplo 2: Lista de tareas 

<?php 
    $tareas = array("Estudiar PHP", "Hacer ejercicios", "Descansar"); 
 
    foreach ($tareas as $tarea) { 
        echo "Tarea: $tarea<br>"; 
    } 
?> 

Resultado:  

Tarea: Estudiar PHP 
Tarea: Hacer ejercicios 
Tarea: Descansar

Ejercicios para practicar 

¡Tu turno de rockearlo! Ve a curso_php8 y prueba estos retos: 

  1. Tabla de multiplicar del 9 

Crea tabla9.php:

<?php 
    for ($i = 1; $i <= 10; $i++) { 
        $resultado = 9 * $i; 
        echo "9 x $i = $resultado<br>"; 
    } 
?> 
  1. Busca la marca Renault 

Crea concesionario.php:

<?php 
    $marcas = array("Toyota", "Ford", "Renault", "Honda"); 
    $encontrado = false; 
 
    foreach ($marcas as $marca) { 
        if ($marca == "Renault") { 
            $encontrado = true; 
            break; 
        } 
    } 
 
    if ($encontrado) { 
        echo "¡Sí, tenemos Renault!"; 
    } else { 
        echo "No, no hay Renault."; 
    } 
?> 

Ejecuta en localhost/curso_php8/ y juega con los arreglos. 

Consejos para no enredarte 

  • for: Asegúrate de que el incremento ($i++) lleve a la condición a false algún día. 
  • foreach: Usa &$valor solo si quieres cambiar el arreglo original; si no, omítelo. 
  • break es tu amigo: Úsalo para salir cuando encuentres lo que buscas. 

¡A por más bucles! 

¡Gran trabajo, crack! Ahora for y foreach son tus aliados para repetir y recorrer como experto. En la próxima lección, veremos la estructura switch para tomar decisiones de otra forma. Si algo no te queda claro, déjame un comentario. 

Lo que aprendiste hoy: 

  • for: Repites con control total: arrancas, chequeas y cambias en una línea. 
  • foreach: Recorres arreglos como un guía automático, fácil y rápido. 
  • Ejemplos vivos: Contaste números y listaste frutas como pro. 
  • Practicaste: Hiciste la tabla del 9 y buscaste Renault como detective. 
  • Tip del pro: Usa break para no dar más vueltas de las necesarias. 
Scroll al inicio