Introducción

A la hora de trabajar con arreglos, vectores, listas o arrays en PHP siempre necesitaremos alguna forma de recorrerlos o iterarlos.

PHP ofrece 2 formas de hacerlo, una de ellas es la que conocemos: un ciclo for; y la otra forma es con un ciclo foreach.

Arreglo de ejemplo

Vamos a iterar sobre un arreglo de animales:

<?php
$animales = ["Perro", "Gato", "Vaca", "Serpiente", "Oso"];
?>

Es un arreglo simple pero bastará para explicar cómo recorrerlo.

Con for

Podemos recorrer un arreglo con un ciclo for. Sólo tenemos que obtener la longitud del mismo con count.

Para imprimir los valores, el código de ejemplo queda así:

<?php
$animales = ["Perro", "Gato", "Vaca", "Serpiente", "Oso"];
for ($x = 0; $x < count($animales); $x++) {
    $animal = $animales[$x];
    echo $animal;
    echo "<br><br>"; #Saltos de línea
}

?>

Ahí los imprimimos, pero podemos hacer cualquier cosa con los valores, fue sólo para ejemplificar.

Con for, optimizado

Hace un momento utilizamos count para contar los valores. Pero en cada iteración del ciclo, se llamaba a count.

Eso es una mala práctica, pues en arreglos largos o grandes nuestro script tomará más recursos e incluso más tiempo.

Es mejor obtener la longitud y guardarla en una variable aparte, así sólo llamamos a count una vez.

Así se ve el código optimizado:

<?php
$animales = ["Perro", "Gato", "Vaca", "Serpiente", "Oso"];
$longitud = count($animales);
for ($x = 0; $x < $longitud; $x++) {
    $animal = $animales[$x];
    echo $animal;
    echo "<br><br>"; #Saltos de línea
}

El resultado es el mismo pero el rendimiento ha sido mejorado.

Con foreach

Finalmente veamos el método más amigable para el ser humano: el ciclo foreach.

Para recorrer el arreglo, podemos hacer esto:

<?php
$animales = ["Perro", "Gato", "Vaca", "Serpiente", "Oso"];
foreach ($animales as $animal) {
    echo $animal;
    echo "<br><br>"; #Saltos de línea
}

Conclusión

En este caso lo hicimos con un arreglo de una dimensión, pero podemos recorrer arreglos de cualquier forma y de cualquier tipo.

Aquí las referencias a foreach.

Si el post ha sido de tu agrado te invito a que me sigas para saber cuando haya escrito un nuevo post, haya actualizado algún sistema o publicado un nuevo software. Facebook | X | Instagram | Telegram | También estoy a tus órdenes para cualquier contratación en mi página de contacto