phpbar.de logo

Mailinglisten-Archive

[php] Re: Doppelt verkettete List / Zeiger

[php] Re: Doppelt verkettete List / Zeiger

David Molineus david at molineus.de
Sam Jun 4 17:47:25 CEST 2005


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