Yes and no (in this case). Yes, it'll be evaluated in each iteration and no, I don't think you'd gain that much in this case because the evaluation would only take place twice. Though I don't know how expensive array_slice vs. creation of another variable and assigning a value to it is ....
But if you'd operate on large arrays it might make sense pulling the eval out of the loop. At least that's what I read in a tuning related article on zend.com Richard Friday, April 30, 2004, 8:37:10 AM, thus was written: > Just a quick follow-up question on that: > Curt Zirzow wrote: >>foreach(array_slice($filenames, 0, 2) as $filename) { >> $files[] = "path/to/" . $filelname; >>} >> >> > Will a function (such as the array_slice here) in a foreach statement > get re-evaluated for each iteration, or is it evaluated just once? > In other words, is there anyhing gained by doing: > $short_array = array_slice($filenames, 0, 2); > foreach($short_array as $filename) { > $files[] = "path/to/" . $filelname; > } > /Mattias -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php