Hallo Andreas,
ich habe an vielen Stellen gelesen das das Referenzieren langsamer ist als das Kopieren! Referenzieren sollte man wohl nur wenn man auch genau das will, und bei besonders viel Daten.
Wo steht das denn? Ich habe genau Gegenteiliges gehört. Ich referenziere immer wenn möglich.
ich habe mich auch gewudert, habe das aber schon an einigen stellen geslesn, sogar offiziell im Manual, oder bei Pear oder sowas, leider finde ich die Stellen gerade nicht. Was ich gfunden habe:
" On the one hand, passing a variable by reference costs more in terms or performance than passing a copy, as PHP has more work to do locating the referenced value of the variable.
On the other hand, every copy of a variable we make uses up more of the memory available to PHP, so we also need to be careful here.
"
aus: http://www.phppatterns.com/index.php/article/articleview/23/1/2/
oder
"Note: There is no performance loss (since PHP 4 and up use reference counting) returning copies instead of references. On the contrary it is most often better to simply work with copies instead of references, because creating references takes some time where creating copies virtually takes no time (unless none of them is a large array or object and one of them gets changed and the other(s) one(s) subsequently, then it would be wise to use references to change them all concurrently)."
von: http://www.phphideout.com/manual.php/language.oop.newref.html
...http://www.google.de/search?q=performance+php+reference+copy
Es ist immer dasselbe:
Referenzen sind teuerer als Kopien, brauche aber weniger Memory. Je nach Daten ist mal das eine schneller, mal das andere. Die Unterschiede sind aber so marginal dass man immer nur das verwenden sollte was programmiertechnisch Sinn macht. Sich aus PErformance-Gründen für das eine oder das andere zu entscheiden ist nur in Ausnahmen der richtige Weg.
Und das ist wohl nicht nur in PHP so, in PHP seien Referenzen noch verhältnismäßig schnell, wobei das ganze mit ZE2 wieder anders ist, denn da werden Referenzen erheblich beschleunigt.
Aber wie gesagt, vernünftige Quellen kann ich leider nicht anbieten, wobei die Suchergebnisse IMHO schon eine deutliche Sprache sprechen. Ich hatte das nur mehrmals eher so nebenbei gelesen und ich weiß leider nicht mehr in welchem Zusammenhang. Habe jetzt ne ganze Zeit gesucht, aber finde nichts mehr. Schade eigentlich. Hatte auch was in einer Google-Group, da hatte jemand auch mal gemessen...
ich erzeuge immer am Anfang _eine_ Instanz die ich dann immer verwende.
Bei $__gv_config: Ja. Bei $this = new Config; nein.
und bei $config-> wird auch nur eien gebraucht - das meinte ich.
Grüße
Andreas