Foreach

Este artículo o sección necesita referencias que aparezcan en una publicación acreditada.
Busca fuentes: «Foreach» – noticias · libros · académico · imágenes
Este aviso fue puesto el 27 de octubre de 2013.

Foreach (de la palabra inglesa for each = para cada uno) es un bloque constructivo de los lenguajes de programación para recorrer los elementos de una colección. Foreach se utiliza por lo general en lugar de una norma para la declaración. A diferencia de otras construcciones de bucle, los bucles foreach por lo general no mantienen contra-indicación explícita, que esencialmente dice "haga esto a todo en este juego" en lugar de "hacer esto x veces." Esto evita posibles errores off-by-one y hace el código más fácil de leer. En lenguajes orientados a objetos un iterador, aunque implícito, a menudo se utiliza como medio de recorrido. Este bucle, implementado a partir de las versiones de PHP4, nos ayuda a recorrer los valores de un array, lo cual puede resultar muy útil por ejemplo para efectuar una lectura rápida del mismo. Recordemos que un array es una variable que guarda un conjunto de elementos (valores) catalogados por claves.[1]

La sintaxis en pseudocódigo es la siguiente:

paraCada ELEMENTO de COLECCIÓN
hacer
   instrucciones
fin paraCada

Un ejemplo práctico es la lectura de un array, lo cual podría hacerse del siguiente modo:

foreach ($array as $clave=>$valor)
{   instrucción 1;  
 instrucción 2;   
 ;

Ejemplo en PHP

 
foreach($conjunto as $variable)
{
  // operar con la variable;
}

Ejemplo en Java

 
for(tipo var: arreglo)
{
  // operar con la variable;
}

Ejemplo en C#

foreach(tipo variable in arreglo)
{
  //Procesos
  //
}

Ejemplo en LISP

(dolist (exp lista)
	;operaciones...
)

Véase también

  • While

Referencias

  1. «PHP: foreach - Manual». php.net. Consultado el 2 de noviembre de 2017. 
  • Foreach en C# (Documentación oficial Microsoft)
  • Foreach en MDN
  • Foreach en PHP (Documentación oficial
Control de autoridades
  • Proyectos Wikimedia
  • Wd Datos: Q3273595
  • Wd Datos: Q3273595