Jak rozumiem, kiedy przekazałem tablicę według wartości, tworzona jest kopia tablicy. tj. W poniższym programie $ y & $ z powinno wymagać tej samej pamięci co $ x. jednak wykorzystanie pamięci praktycznie nie wzrasta. Oczywiście, że moje zrozumienie jest złe, Czy ktoś może wyjaśnić przyczynę.Php przekazany przez wartość lub przez odniesienie
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
}
Wierzę, że php faktycznie nie * kopiuje * danych, chyba że zmodyfikujesz dowolną instancję. –