假设我有一个名为Foo的框架,它包含以下名称空间:
-
Foo'Controllers
-
Foo'Models
-
Foo'Core
我想包含一个第三方插件(Symfony YAML),但它不是一个命名空间库。
如何将所有的YAML类(一共有四个)包含到以下命名空间中:
Foo'ThirdParty'YAML
不编辑原始Symfony YAML文件?
如果不修改原始文件,就无法做到这一点。即使您创建了扩展Symfony的YAML类的带有名称空间的包装器类,原始的包装器类仍将驻留在全局名称空间中(违背了使用名称空间的目的)。
是否有你不想修改原始文件的原因?如果您担心必须更新Symfony包(您正在使用版本控制,对吗?),则名称空间非常容易合并。