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:
- Tabla de multiplicar del 9
Crea tabla9.php:
<?php
for ($i = 1; $i <= 10; $i++) {
$resultado = 9 * $i;
echo "9 x $i = $resultado<br>";
}
?>
- 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.

