Php 如何从命名空间中向全局空间声明新类';d文件?

Php 如何从命名空间中向全局空间声明新类';d文件?,php,namespaces,global,Php,Namespaces,Global,或者用我的问题简洁地说: (在命名空间的文件中)是否可以向全局空间声明新类(扩展在全局命名空间中定义的类) 例如 一些调试信息 返回: x: WPBakeryShortCodesContainer y: Roots\Sage\VisualComposer\WPBakeryShortCode_Your_Gallery 因此,我的新类WPBakeryShortCode\u Your\u Gallery位于Roots\Sage\VisualComposer命名空间中,而不是全局…使用命名空间的替代

或者用我的问题简洁地说:

(在命名空间的文件中)是否可以向全局空间声明新类(扩展在全局命名空间中定义的类)

例如 一些调试信息 返回:

x: WPBakeryShortCodesContainer

y: Roots\Sage\VisualComposer\WPBakeryShortCode_Your_Gallery

因此,我的新类
WPBakeryShortCode\u Your\u Gallery
位于
Roots\Sage\VisualComposer
命名空间中,而不是全局…

使用命名空间的替代语法:

namespace Roots\Sage\VisualComposer {
  //...    
}
//...
namespace Roots\Sage\VisualEditor {
  //...    
}
//...
namespace {  // global code
  if ( class_exists( '\\WPBakeryShortCodesContainer' ) ) {
    class WPBakeryShortCode_Your_Gallery extends \WPBakeryShortCodesContainer {}
  }
}
更多:

x: WPBakeryShortCodesContainer

y: Roots\Sage\VisualComposer\WPBakeryShortCode_Your_Gallery
namespace Roots\Sage\VisualComposer {
  //...    
}
//...
namespace Roots\Sage\VisualEditor {
  //...    
}
//...
namespace {  // global code
  if ( class_exists( '\\WPBakeryShortCodesContainer' ) ) {
    class WPBakeryShortCode_Your_Gallery extends \WPBakeryShortCodesContainer {}
  }
}