1
文字列を使用してクラス内の関数を呼び出そうとしています。例:文字列を使用してクラス内の関数を呼び出すことはできますか?
$clt = new Controller ;
$controller = self::$controller_get[$key]."()";
$clt->$controller
ここでは、$controller
を関数の名前に置き換えたいとします。それは可能ですか?
文字列を使用してクラス内の関数を呼び出そうとしています。例:文字列を使用してクラス内の関数を呼び出すことはできますか?
$clt = new Controller ;
$controller = self::$controller_get[$key]."()";
$clt->$controller
ここでは、$controller
を関数の名前に置き換えたいとします。それは可能ですか?
いくつかの可能性があります
まず、関数を呼び出すときに正しい構文を使用する必要があります。
$clt->$controller();
が、私のお気に入りはこれです:
$className->{"variableName"};
$className->{"methodName"}();
$clt = new Controller ;
$controller = self::$controller_get[$key];
$clt->{$controller}();
このアプローチは非常に慎重に使用する必要があることを、注意してください。コードをデバッグするのは本当に難しいことです。 –