2016-05-24 3 views
2

Мне нужно, чтобы быть в состоянии сделать это:PHP динамических пространств имен

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

Очевидно, что это не будет работать. Итак, как я могу это сделать? Есть ли «динамические пространства имен»?

+0

Вы не можете иметь динамические namepaces: почему бы не создать язык вместо фабрики? –

ответ

0

Невозможно. Пространства имен, импорт и псевдонимы разрешаются во время компиляции.

Однако можно создавать объекты из класса, который строится во время выполнения:

$className = "common\\components\\cfoBi\\i18n\\{$countryCode}\\gimmea"; 

$object = new $className(); 

См PHP Документы http://php.net/manual/en/language.oop5.basic.php#language.oop5.basic.new

+0

Да, я знаком с этим решением: создания классов из динамических имен классов. Однако лучшим решением для меня было бы динамическое пространство имен. – Catalin

Смежные вопросы