modifying within foreach

From: Date: Tue, 23 Jun 2009 18:26:38 +0000
Subject: modifying within foreach
Groups: php.general 
Request: Send a blank email to php-general+get-294465@lists.php.net to get a copy of this message
In the following example: foreach ($results as $key => $item) { //bla bla bla -- unset some of the $items } I want to modify $results within the foreach. In other words, during a given pass of this iteration, I want to delete some of the items based on particular conditions. Then on the next pass thru the foreach, I want $results to be the newer, modified array. This does not seem to work. It appears that the foreach statement is implemented such that $results is read into memory at the start so that any modifications I make to it during a given pass, are ignored on the next pass. Is this true? If so, is there a way that I can tell the foreach statement to re-read the array $results? Or am I just going against the grain here? -Andres

« previous php.general (#294465) next »