Php 变量中具有名称的新对象
我试图启动一个具有动态路径的对象。我有一个带有型号名称的变量Php 变量中具有名称的新对象,php,laravel,class,object,model,Php,Laravel,Class,Object,Model,我试图启动一个具有动态路径的对象。我有一个带有型号名称的变量$model $model = "foo"; $class = new \Path\To\$model(); 我得到了错误 Parse error: syntax error, unexpected '$model' (T_VARIABLE), expecting identifier (T_STRING) 如果我尝试$class=new\Path\To\{$model}() 我得到了错误 Parse error: syntax
$model
$model = "foo";
$class = new \Path\To\$model();
我得到了错误
Parse error: syntax error, unexpected '$model' (T_VARIABLE), expecting identifier (T_STRING)
如果我尝试$class=new\Path\To\{$model}()代码>
我得到了错误
Parse error: syntax error, unexpected '{', expecting identifier (T_STRING)
当我尝试
namespace \App\Models
$class = new $model();
我发现错误未找到类“foo”
当我尝试$class=new\Path\To\foo()时代码>它可以工作
有什么想法吗 试试看:
$class = "\Path\To\foo";
$object = new $class();
或:
尝试:
或:
您可以将路径存储在变量中:
$path = "\Path\To\\";
然后生成类名,如下所示:
$className = $path.$model;
$class = new $className();
您可以将路径存储在变量中:
$path = "\Path\To\\";
然后生成类名,如下所示:
$className = $path.$model;
$class = new $className();