Theo hiểu biết của tôi, khi tôi chuyển mảng theo giá trị, bản sao mảng được tạo. ví dụ: bên dưới chương trình $ y & $ z cần cùng một bộ nhớ với giá $ x. tuy nhiên việc sử dụng bộ nhớ hầu như không tăng lên. Rõ ràng sự hiểu biết của tôi là sai, Bất cứ ai có thể giải thích lý do.Php được chuyển bởi giá trị hoặc tham chiếu
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
}
Tôi tin rằng php không thực sự * sao chép * dữ liệu trừ khi bạn sửa đổi một trong hai ví dụ. –