dedlfix: Objekt „verliert“ Eigenschaft

Beitrag lesen

echo $begrüßung;

Interessant ist bei OOP-Problemen auch die PHP-Version.
Lokal läuft PHP 4.4.8, so, wie es von Apple ausgeliefert wurde. Aber das hat mich auf die Idee gebracht, den Code mal auf dem Server mit PHP 5.2.0 zu testen und siehe da, jetzt funktioniert es. Guter Tipp!

Der wesentliche Unterschied zwischen PHP4 und PHP5 ist, dass bei PHP4 Objekte als Kopie übergeben werden, wie jeder andere Variablentyp auch, in PHP5 aber als Referenz. Wenn du einer Funktion als Parameter ein Objekt mitgibst, dann änderst du unter PHP4 eine Kopie. Das Original-Objekt bleibt erhalten. Will man dieses ändern, muss man es als Referenzen entgegennehmen. PHP5 verwendet bei der Übergabe von Objekten als Funktionsparameter generell Referenzen. Andere Variablentypen werden weiterhin als Kopie übergeben. Vielleicht ist in diesem Verhalten der Fehler zu suchen. Ansonsten ist mir nicht bekannt, dass PHP4 Alzheimer hätte (wohl aber pensioniert ist).

echo "$verabschiedung $name";