2013-11-22 108 views
0

如何在依赖用户输入的类中调用函数?类别的变量方法名称

因此,如果用户发送2011我要调用的方法$record->show_2011()

如果他们发送的输入2012我要调用的方法$record->show_2012()

一样,我想打电话给$record->show()

怎么办我将用户的输入传入方法名称来调用它?

+0

可能是最好的映射传入变量的方法/函数名。 –

+2

难道你不能把它作为一个参数传递给一个函数吗? – raina77ow

回答

2
$functionToCall = 'show_' . $userInput; 
$record->$functionToCall(); 
0

您需要首先将函数名称放入变量中,例如, $function_name = 'set'.$request->getFirstProperty();然后$record->$function_name();

0

你也可以这样来做:

$record->{'show'}(); 

$record->{'show_' . $variableThatHoldsTheRestOfFunctionName}(); 
+0

错误的输入可能会调用不存在的方法。 –