Допустим, есть класс Mysql который должен быть в пространстве lib
И классы Library с Engine которые живут в пространстве engine
Допустим, я хочу писать по человечески не используя тысячи объявлений use и не обращаясь к классам через\нескончаемые\вагоны\пространства\имен
Сейчас надо делать как-то так
namespace lib;
use engine\Engine as Engine;
use engine\Library as Library;
class Mysql extends Library {
public function Init() {
Engine::Say('Test');
}
}
Можно ли делать как-то так?
namespace lib;
use engine; // Вжух, и все пространство имен "распаковано" сюда
class Mysql extends Library {
public function Init() {
Engine::Say('Test');
}
}
Или так?
use engine; // Вжух, и все пространство имен "распаковано" сюда
// Говорим, что Mysql теперь в lib без всяких namespace
class lib\Mysql extends Library {
public function Init() {
Engine::Say('Test');
}
}
Кто как вообще избегает всей этой каши?
Прям так нельзя, но можно короткий псевдоним:
namespace lib;
use engine as E; // Вжух, и все пространство имен "распаковано" сюда
class Mysql extends E\Library {
public function Init() {
E\Engine::Say('Test');
}
}
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости