Come ho capito, quando ho passato array per valore, viene creata una copia dell'array. i.e nel programma in basso $ y & $ z dovrebbe richiedere la stessa memoria di $ x. tuttavia l'utilizzo della memoria difficilmente aumenta. Ovvio che la mia comprensione è sbagliata, qualcuno può spiegare la ragione.Php passato per valore o per riferimento
for($i=0;$i<1000000;$i++)
$x[] = $i; // memory usage : 76519792
echo memory_get_usage();
function abc($y){
$y[1] = 1; //memory usage : 76519948
$z[]= $y; //memory usage : 76520308
}
Credo che php in realtà non * copi * i dati a meno che non si modifichi l'istanza. –