sì grazie andr3a, quel thread l'avevo a suo tempo già visto, ma la domanda mi si è posta per queste 2 alternative:

for(con count ottimizzato)
{ $arr[$id] = robamia; ... break }

OPPURE

do { qui usi key($arr) e current($arr) }
while {next($arr)}

vedi, qui non si usa nemmeno count(), ma dei costrutti. mi chiedevo se come accesso all'array sono più veloci o equivalenti alle [] e se il ciclo WHILE di per sè è più lento...

edit:

resta inteso che in php5 il metodo più veloce dovrebbe essere il nuovo FOREACH con passaggio per riferimento.