我刚接触PHP,因此尝试动态实例化这样的类:
$var = new \App\$str;
但我不断收到此错误:
unexpected variable $str after '\', expected: identifier.
我知道这是可能的,但是我不确定确切的语法是什么,我发现的所有示例都没有\App\
我需要的部分。
的new
操作者可以接受一个类名称标识符,或含有类名称的变量,而不是它们的混合物。
由于完全限定的类名的一部分是未知的(动态的),因此应将所有部分放入字符串变量中:
$class_name = 'A'; $namespace = '\\App'; $fully_qualified_class_name = "$namespace\\$class_name"; $var = new $fully_qualified_class_name;