Estructuras de control: bucle foreach

El bucle foreach

El bucle foreach es un tipo especial de bucle que permite recorrir estructuras que contienen varios elementos (como matrices, recursos u objetos) sin necesidad de preocuparse por el número de elementos.

Problemas al recorrer matrices con el bucle for

En otros lenguajes de programación en los que los índices de las matrices son números naturales correlativos, las matrices se pueden recorrer fácilmente con bucles for. Pero como las matrices de PHP son matrices asociativas y los índices de las matrices no tienen por qué ser valores numéricos correlativos, nos podemos encontrar con problemas. Por ejemplo, podemos hacer involuntariamente referencia a un término inexistente o algunos términos pueden resultar inaccesibles.

Sintaxis del bucle foreach

La sintaxis del bucle foreach puede ser una de las siguientes:

foreach ($matriz as $valor) {
    bloque_de_sentencias
}
foreach ($matriz as $indice => $valor) {
    bloque_de_sentencias
}

El bucle se ejecuta tantas veces como elementos tiene la matriz. En cada iteración, las variables $indice y $valor van tomando los valores de los índices y de la matriz para ese índice.

Ejemplos de bucles

Matrices

Consultas a bases de datos

Por completar