1

これが私がやりたいことです:私はオブジェクトを持っています

class TestObject {
      public function __call($name,$args){
        if($name == 'somemethod'){
          print "Yesssss!!!!!!";
        }
      }
}

コードよりも、このメソッドを次のように呼び出しています。

$obj = new TestObject()
$obj->somemethod()  // should work according to http://www.php.net/manual/en/language.oop5.overloading.php#object.call
call_user_func(array('myobject','somemethod')) // this does not work!!!

最後の例を機能させる方法はありますか?

4

2 に答える 2

0
$obj_name = 'myobject';
$method_name = 'somemethod';
${$obj_name}->${$method->name()};
于 2013-02-17T16:26:17.643 に答える
0

使用できます

call_user_func(array($obj,'somemethod'));

また

$method = 'somemethod';
$obj->$method();
于 2013-02-17T16:27:04.330 に答える