1
call_user_func_array()
's PHP manual's examplesでcall_user_func_array()を使用すると、変数foo
およびbar
と混乱させることができます。codeigniterの_remapメソッド
とにかく、下記_remap
とComplexFunction
を考慮してください。
class MyClass extends CI_Controller
{
public function _remap($method, $params = array())
{
if (method_exists($this, $method))
{
return call_user_func_array(array($this, $method), $params);
}
}
public function ComplexFunction($param1, $param2, $param3, $param4)
{
// process
return 'done';
}
}
今のコードワークのこの作品は、正しくだろうか?
$params = array(
'param1' => '1',
'param2' => '2',
'param3' => '3',
'param4' => '4'
);
$myObject = new MyClass();
$output = call_user_func_array(array($myObject, 'ComplexFunction'), $params);
echo $output;
$output
はdone
だろうか?- これは、コードシニターの
_remap()
関数で使用する信頼できる方法ですか?
試しましたか?なぜあなたはそのようなコントローラをインスタンス化していますか? –
実際、私は一般的な方法を探していました。これは私のコントローラを使用する方法ではありません。私のコントローラには他にも多くの方法があります。 'search()'メソッドには、ユーザが定義した順序で渡される多くのオプションのパラメータがあるので、 '_remap'関数を使うべきです。 –