Вот код:изменить массив в цикле
$arraya = array('a','b','c');
foreach($arraya as $key=>$value)
{
if($value == 'b')
{
$arraya[] = 'd';
//print_r($arraya); //$arraya now becomes array('a','b','c','d')
}
echo $key.' is '.$value."\n";
}
и получите:
0 is a
1 is b
2 is c
И я удивляюсь, почему 3 is d
не показывает ??
Возможный дубликат [изменить начальный массив внутри цикла foreach?] (Http://stackoverflow.com/questions/2348077/change-initial-array-inside-the-foreach-loop) –