Mailinglisten-Archive |
Jan Piotrowski wrote: > Hallo Hans, > > addItem() ruft $raum = getRaum($item); auf, was anhand des Itemtyps > den Variabelnnamen der Property zurückliefert. Das nutzt additem() > dann um per $this->$raum auf den Raum zuzugreifen. > > Ist das in deinem Code ein Tippfehler und sollte eigentlich > $this->warenkorb[...] heissen? Das wäre dann ja ein mehrdimensionales > Array in der Parentklasse und das Zugriffsproblem für die Räume damit > elegant umschifft - richtig verstanden? Ja, aber es handelt sich um eine potentielle neue Quelle unerwünschter Features. Zum Beispiel schafft es ggf. die Möglichkeit in einem Korb, der garkeine Tiefkuehlkost aufnehmen soll, dass dieser die Ware trotzdem schluckt. Die erstere Methode ist allerdings auch nicht notwenigerweise besser. Vorallem aus stylistischen Gründen. Denn einem Programmierer, der deinen Quelltext liest ist nicht unbedingt klar, was getRaum() zurück liefert. Zunächstmal könnte da sonstwas drin stehen und $this->$raum könnte jede beliebige Eigenschaft deines Objekts überschreiben und im schlimmsten Fall sogar ein Sicherheitsproblem darstellen... > > - Jan Yannik
php::bar PHP Wiki - Listenarchive