我有一个类似于以下内容的php类。
class Foo{
function New_Function($functionName,$ParamsArray){
$retValue = call_user_func_array($functionName,$ParamsArray);
return $retValue;
}
function req_function(param1,param2){
//Doing something
}
function otherfunction($param1,$param2){
$getval = $this->New_Function('req_function',array($param1,$param2));
}
}
我想使用req_function
从otherfunction
调用call_user_func_array
作为相同类的函数(因为有许多函数,如req_functions
,因此我决定使用{{ 1}}),但我无法这样做,因为我还没有使用指向父类的call_user_func_array
指针。
如何让我的计划有效?
答案 0 :(得分:0)
您的代码包含多个错误。请查看评论以获取详细信息。
class Foo{
function New_Function($functionName,$ParamsArray){
// Call a class method by array(CLASS, METHOD)
$retValue = call_user_func_array(array($this, $functionName),$ParamsArray);
return $retValue;
}
// Leading dollar signs were missing
function req_function($param1,$param2){
echo "$param1: $param2";
}
function otherfunction($param1,$param2){
$functionName = 'req_function'; // $functioName was not defined
// Call $this->New_Function instead of New_Function
$getval = $this->New_Function($functionName,array($param1,$param2));
}
}
$test = new Foo();
$test->otherfunction("a", "b");