我在程序中使用了以下代碼。php call_user_func_array()警告
class A {
function __call($fname,$arguments)
{
$methods = array('get', 'set');
foreach ($methods as $method) {
if(strstr($fname,$method))
{
$fname = str_replace($method, "", $fname);
$function = $method."method";
if($method == "set")
{
call_user_func_array("setmethod", array($fname,$arguments[0]));
}
if($method == "get")
{
call_user_func_array("getmethod", $fname);
}
break;
}
}
}
function setmethod ($key,$value)
{
$this->$key = $value;
}
function getmethod($key)
{
return $this->$key;
}
}
和我越來越warrning這樣
「警告:call_user_func_array()預計參數1是一個有效的回調,功能‘使用setMethod’未找到或無效的函數名」
和程序停止,沒有進一步顯示。
所以,我把它這是一個類的一部分? – vollie
'call_user_func_array'不會奇蹟般地識別出您處於類上下文中。使用'array($ this,「setmethod」)'而不是''setmethod「'。 – Yoshi