从变量名创建对象

Koo*_*bin 3 php string class

如何从变量中单行创建我的类对象:

$strClassName = 'CMSUsers';
$strModelName = $strClassName.'Model';
$strModelObj = new $strModelName();
Run Code Online (Sandbox Code Playgroud)

上面的代码成功创建了我的CMSUsersModel类对象,但是当我尝试:

$strClassName = 'CMSUsers';
$strModelObj = new $strClassName.'Model'();
Run Code Online (Sandbox Code Playgroud)

它弹出错误....说:

Parse error: syntax error, unexpected '(' in 
Run Code Online (Sandbox Code Playgroud)

Gau*_*rav 13

创建对象时不能使用字符串连接.

如果你使用

class aa{}

$str = 'a';
$a = new $str.'a';   // Fatal error : class a not found



class aa{}

$str = 'a';
$a = new $str.$str; // Fatal error : class a not found
Run Code Online (Sandbox Code Playgroud)

所以你应该使用

$strModelName = $strClassName.'Model';
$strModelObj = new $strModelName();
Run Code Online (Sandbox Code Playgroud)