Сейчас это проклятие моего проекта, а также моих прошлых проектов. Для каждого из них я использовал варианты, которые были далеко не оптимальными.
Проблема: в моем проекте есть реестр, в котором создается экземпляр любого класса, требующий от него передачи ему полного пространства имен, а извлечение этого полного пространства имен может быть проблематичным. Пример:
$registry->getClassInstance('\application\model\SomeModel');
Чтобы получить это полное пространство имен, у меня есть несколько вариантов, все громоздкие:
Создайте объект класса с функциями для извлечения всех пространств имен. Опять много хлопот и непрактично в использовании
Как сделать ссылки на пространство имен легкодоступными и легко обновляемыми в большом проекте? Как крупные проекты обычно справляются с этим?
Я не понимаю, что вы просите, или что вам действительно нужно.
Могу предложить вам взглянуть на автозагрузчик Symfony. Вы можете использовать его как компонент, без необходимости использовать весь каркас тоже.
Затем вы можете вызывать классы и добавлять пространства имен, как если бы они были пакетами в Java.
Что ответить на твой вопрос?
Других решений пока нет …