>我有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));
}
}
我想从使用 call_user_func_array
的相同类的函数otherfunction
调用req_function
(因为有很多像 req_functions
这样的函数,因此我决定使用 call_user_func_array
),但我无法这样做,因为我没有使用指向父类的$this->
指针。
如何使我的程序正常工作?
您的代码包含多个错误。详情请查看评论。
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");