PHP:当前框架中的命名空间第三方模块/插件

时间:2011-10-16 01:38:24

标签: php plugins namespaces

假设我有一个名为Foo的框架,它包含以下命名空间:

  1. Foo\Controllers
  2. Foo\Models
  3. Foo\Core
  4. 我想要包含第三方插件(Symfony YAML),但它不是命名空间库。

    我如何将所有YAML类(有四个)包含在以下命名空间中:

    Foo\ThirdParty\YAML

    不编辑原始的Symfony YAML文件?

1 个答案:

答案 0 :(得分:1)

如果不修改原始文件,则无法执行此操作。即使您创建了扩展Symfony的YAML类的命名空间包装类,原始的仍将驻留在全局命名空间中(这违背了命名空间的目的)。

您是否有理由不想修改原始文件?命名空间很容易合并,如果你担心必须更新Symfony包( 使用版本控制,是吗?)。