il codice è una cosa di questo tipo:

Codice PHP:
$array_el = array();

for(
$i=0;$i<$n_elementi;$i++)
{
    
$obj = ...... (da una funzione)

    echo(
'el $i: '.$obj->nome.'.');

    
$array_el[] = $obj;

Ora, l'output in questo ciclo mi da, giustamente, una cosa tipo:

el 0: Carlo.
el 1: Luca.
el 2: Andrea.

Ma se vado a scorrere l'array $array_el ricevo (per ogni $array_el[$i]->nome):

Andrea
Andrea
Andrea

Ovvero l'ultimo oggetto assegnato, in pratica è come se avessi asseganto l'indirizzo di $obj invece che aver memorizzato una intera copia dell'oggetto in $array_el[ x ] e lui mi stampa l'ultima informazione che ho messo in $obj...

Uso PHP 5, Apache 2 su WinXP.