PHP动态命名空间

时间:2016-05-24 16:20:17

标签: php dynamic namespaces

我需要能够做到这一点:

$ns = "\\common\\components\\cfoBi\\i18n\\{$countryCode}\\gimmea";
use $USP;

显然这不会奏效。那我该怎么做呢?拥有"动态命名空间"?

1 个答案:

答案 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