我需要能够做到这一点:
$ns = "\\common\\components\\cfoBi\\i18n\\{$countryCode}\\gimmea";
use $USP;
显然这不会奏效。那我该怎么做呢?拥有"动态命名空间"?
答案 0 :(得分:1)
不可能。命名空间,导入和别名在编译时解析。
但是,可以从运行时构建的类名创建对象:
$className = "common\\components\\cfoBi\\i18n\\{$countryCode}\\gimmea";
$object = new $className();
请参阅PHP文档:http://php.net/manual/en/language.oop5.basic.php#language.oop5.basic.new