Use a for loop instead of a foreach.
Best,
--
Andries Seutens
http://andries.systray.be
Waigani schreef:
Hi All,
It seems that while() does not allow you to copy arrays (eg $array2 =
$array1;) and foreach does not allow you to manipulate the array pointer. I
need to do both. My main question is can you manipulate the array pointer in
foreach? Bellow is a snipit of what I'm trying to do (it is doing my head
in!):
$many = $this->many->toArray();
$i = 0;
function loop($many){
foreach($many as $one){
$var = 'var' . $i;
if($one['var'] == '$var){
$many2 = $many;
if($condition){
loop($many2);
}
}else{prev($many); $i++;
}
}
Waigani wrote:
Thanks Michael,
What I'm trying to get is a nested foreach LOOP. My work around does not
do it. I'll play with yours and see if I can get it to loop.
Thanks,
Michael B Allen-3 wrote:
On 10/8/07, Waigani <[EMAIL PROTECTED]> wrote:
can you nest foreach in the framework?
eg in a view template:
foreach($this->many as $one){
print_r($one);
foreach($this->many as $one){
print_r($one);
}
}
Hi Waigani,
Each iterator is specific to the object being operated on so just make
a copy of the array before you iterate over it. Also, you'll have to
use a separate variable for $one if it will be used in the outer loop.
Try this:
foreach ($this->many as $one) {
$_many = $this->many;
foreach ($_many as $_one) {
print_r($_one);
}
}
--
Michael B Allen
PHP Active Directory SPNEGO SSO
http://www.ioplex.com/
Gecontroleerd op virussen door de JOJO Secure Gateway.