Function Yii2从变量动态调用模型中的PHP函数
是否可以通过变量动态调用模型函数Function Yii2从变量动态调用模型中的PHP函数,function,variables,model,yii2,call,Function,Variables,Model,Yii2,Call,是否可以通过变量动态调用模型函数 $model = $request['model']; $action = $request['action']; 我有一些模型和几个功能在里面。现在我想调用一个基于变量$model和$action的模型函数。在这种情况下,我需要根据请求动态调用模型函数。对于静态函数 $myObject->myDinaFunction(); 假设你是一个班级,例如: \common\models\MyClass 带着 public static functi
$model = $request['model'];
$action = $request['action'];
我有一些模型和几个功能在里面。现在我想调用一个基于变量$model和$action的模型函数。在这种情况下,我需要根据请求动态调用模型函数。对于静态函数
$myObject->myDinaFunction();
假设你是一个班级,例如:
\common\models\MyClass
带着
public static function mStatyFunction()
{
....
}
您可以将类名用作var
$myClass = '\common\models\MyClass';
$myClass::myStatFunction();
或者,如果您还需要函数名作为var,您可以
$myFunc = 'myStatFunction';
$myClass::$myFunc();
对于非静态函数,您可以简单地创建一个新对象
public function myDinaFunction()
{
....
}
$myObject = new MyClass();
并调用该函数
$myObject->myDinaFunction();
或者也
$var = 'myDinaFunction";
$myObject->$var();
你的意思是类内的静态函数??这些函数是上述类中的公共函数。这些函数是静态的还是非静态的??谢谢你的快速支持!我不知道,在这里如何联系你,除了在这个答案。也许你也可以看看这个问题@佩里诺:我已经看过了,但很抱歉,目前我还没有从事持票人/休息的经验。。所以我想我帮不了你..在你的静态函数$myClass::myStatFunction()的例子中,我怎么能把myStatFunction()也用作变量呢?在非静态函数建议中,我发现,我还必须将名称空间包含到类变量中。如果我选择变量$myObject->$var,我会遇到一个问题:未定义的属性:frontend\modules\rest\models\Member::$login->其中'login'是$var的正确值。这意味着$var将解析为其值,但系统会在更新var应答中的funct的情况下为静态函数设置一个'$'。。对于测试,我使用的是(PHP5.6.31)和work。。(显然指定了正确的命名空间)