foreach
w PHP7 Domyślnie podczas iteracji przez wartość, pracuje na kopii tablicy według: http://php.net/manual/en/migration70.incompatible.phpzmiany foreach w PHP7
Czy leniwie utworzyć kopię tylko wtedy, gdy występują zmiany wprowadzone do tablicy lub wartość czy będzie zawsze tworzyć kopię iw gruncie rzeczy sprawiać, że pętla odwoła się do optymalizacji wydajności?
Co więcej, czy tablice obiektów wciąż są w pętli/dają odniesienia do obiektów? Czy faktycznie będą one również tworzyć kopie dla obiektu foreach
i zwracać obiekty według wartości?
Zgodnie z [najlepsza odpowiedź tutaj] (http://stackoverflow.com/questions/10057671/how-does-foreach-actually-work?rq=1) istnieje również kopia wykonana w PHP5 podczas iteracji według wartości. – Kenney
Sugestia: Po prostu powtarzaj i nie próbuj optymalizować, pisząc efektywny kod. Większość czasu wystarczy użyć konstrukcji i pozwolić im wymyślić, jak wykonać kod. Tylko jeśli zmierzysz tę wydajność, nie można zaakceptować, czy chcesz wprowadzić zmianę. (Nie jest to odpowiedź lub zdanie w dół, ponieważ istnieje akademicki powód zadawania pytania, ale warto to stwierdzić) – ircmaxell
@ircmaxell można to sformułować briefer: http://stackoverflow.com/questions/385506/when-is-optimisation- przedwczesny –