Mailinglisten-Archive |
Hallo Manfred,
>Problem ist nun, das ich bei der Methode getKursObjekt ja eine Referenz zurück
>gebe. Nun setze ich ja mit $test->ort = "Hamburg"; den Ort der Instanz mit
>Namen nummer1 auf Hamburg. Lasse ich das Skript ablaufen, bleibt die
>Instanzvariable dennoch auf Frankfurt. Lediglich der direkte Aufruf
>print "<p>".$test->name." ".$test->ort; bring mir den korrekten Ort.
>
[...]
>Hat jemand eine Idee warum das nicht funktioniert?
>
[...]
> function getKursObjekt($name)
> {
> $akt=&$this->pHead;
> while($akt != NULL) {
> if( $akt->name == $name ) return($akt);
> $akt = &$akt->pNext;
> }
> }
>}
>
Das Problem liegt bei der Funktion getkursObjekt($name). PHP hat die
Eigenheit bei einem Funktionsaufruf nur dann eine Referenz
zurückzugeben, wenn die Funktion mit function *&* getkursObjekt($name)
deklariert wurde und mit $obj = & $obj2->getkursObjekt($name);
aufgerufen wird. Bei der obigen Funktion fehlt das eine &.
Gruß
David
php::bar PHP Wiki - Listenarchive