使用变量调用 class 和函数
Calling a class and function using variable
我一直在想是否可以这样调用函数
//
public function getDataSource($id,$source,Request $request){
$form = 'Invoice';
$fuToCall = $source;
return \App\Core\Forms\.$form.\.$form.DataSource::$fuToCall();
}
我的 $form 名称的连接不起作用,为什么?有人可以帮忙吗
你并不是真的在连接字符串。您示例中命名空间的非动态部分不是字符串。
你可以这样做:
$class = '\App\Core\Forms\'.$form.'\'.$form.'\DataSource';
return $class::$fuToCall();
或 1 行:
return ('\App\Core\Forms\'.$form.'\'.$form.'\DataSource')::$funcToCall();
这应该有效。
call_user_func('\App\Core\Forms\' . $form . '\' . $form . '\DataSource', 'fuToCall');
我一直在想是否可以这样调用函数
//
public function getDataSource($id,$source,Request $request){
$form = 'Invoice';
$fuToCall = $source;
return \App\Core\Forms\.$form.\.$form.DataSource::$fuToCall();
}
我的 $form 名称的连接不起作用,为什么?有人可以帮忙吗
你并不是真的在连接字符串。您示例中命名空间的非动态部分不是字符串。
你可以这样做:
$class = '\App\Core\Forms\'.$form.'\'.$form.'\DataSource';
return $class::$fuToCall();
或 1 行:
return ('\App\Core\Forms\'.$form.'\'.$form.'\DataSource')::$funcToCall();
这应该有效。
call_user_func('\App\Core\Forms\' . $form . '\' . $form . '\DataSource', 'fuToCall');