Mailinglisten-Archive |
hallo,
ich hab folgendes problem. ich brauche die funktion
call_user_method(...), um innerhalb eines objektes member-funktionen
aufzurufen, die erst zur laufzeit existieren. diese methoden sollen dann
attribute des objektes verändern, und diese veränderung soll beibehalten
werden.
------------>8-----------
class abc
{
var $var;
...
function test()
{
...
$this->var = "bar";
}
...
function run()
{
...
$method = "test";
$this->var = "foo";
echo $this->var; // zeigt logischerweise "foo"
call_user_method($method, $this);
echo $this->var; // zeigt interessanterweise immer noch "foo"
...
}
}
------------8<-----------
meine frage: erzeugt call_user_method(...) ein neues objekt? wenn ja,
wie kann das vermieden werden?
eine möglichkeit gibt's, die ist aber nicht sauber:
function test() {... return $this; }
function run() {... $this = call_user_method(...); }
kennt noch jemand eine bessere möglichkeit?
vielen dank schon mal,
frieder
(p.s. mail bitte auch direkt an mich)
php::bar PHP Wiki - Listenarchive