phpbar.de logo

Mailinglisten-Archive

[php] PHP 5: Referenz oder keine Referenz - das ist hier die Frage!

[php] PHP 5: Referenz oder keine Referenz - das ist hier die Frage!

Sascha Grossenbacher saschagros at bluewin.ch
Sam Jul 29 20:34:44 CEST 2006


Hannes H. wrote:
> Guten Abend!
>
> Irgendwie werd ich aus der PHP-Doku nicht wirklich schlau: Werden in
> PHP 5 grundsätzlich in jedem Fall Referenzen übergeben oder nur, wenn
> es sich um Objektinstanzen handelt?
>
> Wenn zweiteres der Fall ist: Kann man noch immer mit & erzwingen, dass
> eine Referenz übergeben wird?
>   
Ja, genau so ist es. Objekte werden per default als Referenz übergeben,
das kann man mit clone() verhindern. Alles andere wird weiterhin als
Kopie übergeben, mit & kann man erzwingen das es als Referenz übergeben
wird.

Zu beachten ist, dass auch bei einem clone Memberobjekte (z.B. private
$obj = new object_irgendwas();) als Referenz übergeben werden. Will man
das verhindern muss bei der Klasse die Methode __clone() implementieren,
die selbstständig die benötigten Memberobjekte auch noch cloned-

Gruss Sascha

php::bar PHP Wiki   -   Listenarchive