Ajaxa: Methode aufrufen

Hi,

bei einer Klasse, deren Struktur sich erst im Laufe der Ausführung ergibt, rufe ich derzeit z.B. dies auf:
$clTest->mymethod($param)
Nun habe ich eine Funktion, die dies erledigen sollte, wobei es anstelle von mymethod auch mymethod2 sein könnte, die aufgerufen werden muss.
Es ist schwieriger als ich dachte, eben diese aufzurufen, da etwas wie
$methodname='mymethod2';
$clTest->$methodname($param);
nicht funktioniert.
Wie kann man dies realisieren? Callback oder wie sich das nennt?
Achja, es handelt sich um eine nusoap::proxy Klasse, die scheinbar keine Call-Funktion hat, die sich ebenso aufrufen lässt wie methodname($param);

Bitte um Hilfe.
Thx

  1. Moin!

    Es ist schwieriger als ich dachte, eben diese aufzurufen, da etwas wie
    $methodname='mymethod2';
    $clTest->$methodname($param);
    nicht funktioniert.
    Wie kann man dies realisieren? Callback oder wie sich das nennt?

    PHP hat doch diverse Funktionen, die Existenz von Methoden prüfen - und auch den Aufruf von Methoden.

    Eine kurze Recherche bringt http://de3.php.net/manual/de/function.call-user-method.php mit Verweis auf http://de3.php.net/manual/de/function.call-user-func.php.

    - Sven Rautenberg

    --
    "Love your nation - respect the others."
    1. Hi,
      ja, call-user-func.php funktioniert zwar für Funktionen, aber wie nutze ich es für eine Funktion, die einer Klasse angehört?
      also nicht method1(), sondern $klasse->method1()
      und damit klappts irgendwie nicht oder wie sollte der aufruf dabei erfolgen?

      1. hi,

        ja, call-user-func.php funktioniert zwar für Funktionen, aber wie nutze ich es für eine Funktion, die einer Klasse angehört?

        Darauf hat dich Andreas bereits 20 Minuten, bevor du diese Rückfrage hier gestellt hast, hingewiesen.

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }
      2. Hi!

        ja, call-user-func.php funktioniert zwar für Funktionen, aber wie nutze ich es für eine Funktion, die einer Klasse angehört?

        Wirf doch einfach mal einen Blick in das PHP-Handbuch.
        Für deinen Fall interessant sind die Klassen- und Objekt-Funktionen und (besonders) die Funktionen zum Umgang mit Funktionen.

        Schöner Gruß,
        rob

  2. Hi Ajaxa,

    $methodname='mymethod2';
    $clTest->$methodname($param);
    nicht funktioniert.
    Wie kann man dies realisieren?

    schau dir die Ausführungen zum callback-Typ an. Dort erfährst du, wie du eine Klassenmethode an call_user_func() und Konsorten übergibst

    Gruß,
    Andreas.