foreach
trong PHP7 theo mặc định, khi lặp lại theo giá trị, hoạt động trên một bản sao của mảng theo: http://php.net/manual/en/migration70.incompatible.phpthay đổi foreach trong PHP7
Liệu nó uể oải tạo ra một bản sao duy nhất nếu có sự thay đổi thực hiện cho các mảng hoặc một giá trị hay nó sẽ luôn luôn tạo ra một bản sao và trong bản chất làm cho looping trên tài liệu tham khảo một tối ưu hóa hiệu suất?
Ngoài ra, các mảng đối tượng vẫn lặp qua/cung cấp cho bạn tham chiếu về các đối tượng? Hay họ cũng sẽ tạo bản sao cho foreach
và trả về các vật thể theo giá trị?
Theo [câu trả lời hàng đầu ở đây] (http://stackoverflow.com/questions/10057671/how-does-foreach-actually-work?rq=1) cũng có bản sao được tạo bằng PHP5 khi lặp lại theo giá trị. – Kenney
Gợi ý: Chỉ cần lặp lại và không cố gắng tối ưu hóa bằng cách "viết mã hiệu quả". Phần lớn thời gian chỉ sử dụng các cấu trúc và cho chúng biết cách thực thi mã. Chỉ khi bạn đo lường hiệu suất đó không được chấp nhận, bạn có muốn thực hiện thay đổi không. (Không phải là câu trả lời hoặc câu trả lời vì có lý do học thuật để đặt câu hỏi, nhưng điều này đáng ghi rõ) – ircmaxell
@ircmaxell điều này có thể được xây dựng briefer: http://stackoverflow.com/questions/385506/when-is-optimisation- sớm –