使用带有变量的字符串作为函数名


Using a string with variables as a function name

我想根据用户的操作调用正确的函数。

这是我的代码:

$sFunction = $sAction.'_dispatch('.$sType.')';
$oMyObject->$sFunction;

$sAction和$sType是我使用JS得到的PHP变量。$sAction可以是"delete"、"edit"、"add",$sType可以是"package"、"content"等。

如果你能解释一下为什么你把它们放在这里或不放在这里,我想我的报价有问题。这个问题让我怀疑一个参数是以名称+值还是仅以值的形式发送的。

注意:我有一个PHP通知"Undefined property",它不能访问我在控制器中的函数。

你快到了,只是事情有点混乱。

$sFunction = $sAction.'_dispatch';
$oMyObject->$sFunction($sType);

应该起作用。

在调用时传入参数,而不是在定义变量名的位置。