関数が変数に格納されているクラスのPHP関数にアクセスするには?例えばクラスのPHP関数へのアクセス
:
$functionname = "say_hello";
$obj = new Class();
$obj -> $functionname();
関数が変数に格納されているクラスのPHP関数にアクセスするには?例えばクラスのPHP関数へのアクセス
:
$functionname = "say_hello";
$obj = new Class();
$obj -> $functionname();
上記参照リンク上の完全な説明をそれが存在し、callabの場合は変数チェックルその後、
if (method_exists($product, $method)) {
print $product->$method(); // invoke the method
}
それは
if (is_callable(array($product, $method))) {
print $product->$method(); // invoke the method
}
返信ありがとう: 私のプログラムの流れはif節に入りますが、それでも私は得られません返された値(ここではprint $ product - > $ method() ですが、まだ関数の値は得られません) – Aniruddhsinh
クイックサンプルを使用:関数名はに格納されている場合array($obj, $functionname)
call_user_func(array($obj, $functionname), your parameters);
返信ありがとう: 私は関数の値(ここでは$ functionnameの値)を得られません。 – Aniruddhsinh
あなたの関数が何かを返すなら、 '$ result = call_user_func(array($ obj、$ functionname));' – Eineki
private function __get($name) {
$method = 'get'.$name;
return $this->$method();
}
呼び出し可能であるかどうかを確認のようなメソッド名を構築し、まさにそのように、はい
それを呼び出す__get関数を記述します。 http://codepad.viper-7.com/ttfLas – deceze
[私はメソッドを呼び出すために変数を使用できますか?](http://stackoverflow.com/questions/4276231/) – outis