2011-06-09 5 views
10

Por curiosidad, ¿las dos opciones siguientes son funcionalmente equivalentes?Pasar un resultado de devolución de función a un bucle foreach

$array_variable = function_that_creates_an_array(); 
foreach($array_variable as $a){ 
    do_something() 
} 

vs

foreach(function_that_creates_an_array() as $a){ 
    do_something() 
} 

Sólo quiere asegurarse de que no estoy llamando a la función en cada iteración o algo tonto como eso.

Gracias!

Respuesta

11

Sí, son básicamente equivalentes.

La única diferencia es que la primera agregará una variable al alcance actual (es decir, si está en el ámbito global).

0

Simplemente, sí, son funcionalmente iguales.

Cuestiones relacionadas