Возник интересный вопрос.
Есть некий фремворк, который должен использовать сторонние модули для расширения своих возможностей.
Представим некий код, который использует своё собственное пространство имен.
А сам фреймворк использует свое пространство имен.
В коде для наглядности:
//Сторонний код
namespace my;
class SomeUsesrClass {}
//Фреймворк
namespace fr;
class FrClass {}
Вот я хочу во фреймворке юзать сторонний класс.
Могу сделать так:
//Фреймворк
namespace fr;
class FrClass {
function test()
{
$user_class = new /my/SomeUsesrClass ();
}
}
Но это длинно, хочется так:
$user_class = new SomeUsesrClass();
При этом возникает желание добавлять пространства имен сторонних классов в какое-то вложенное пространство имен фреймворка типа: /fr/usersClass/
Вообще кто знаток, объясните как правильно работать с пространствами имен в данном контексте, что бы можно было добавить сторонний код, и что бы его можно было использвать во всей системе без дополнительных объявлений use, в каждом файле.
Спасибо.
_____________